C

Qt Quick Ultralite image_cache 示例

演示如何使用 Qt Quick Ultralite 中的图像缓存。

概述

该示例显示了两组图像。当前组每隔 reloadInSeconds 秒更改一次,缓存大小设置为每次 fit 4 张图像,这是每个图像集中图像的数量。因此,缓存可以保存当前活动图像集中的所有图像。当图像请求在显示上渲染时——当通过滑动访问新图像时,将图像加载到缓存中。当缓存满时,它将删除最旧的图像以释放空间,以用于当前请求的图像。

目标平台

注意:由于 Infineon TRAVEO™ T2G 和 RH850 D1M1A 缺乏触摸输入,该示例将自动在每隔 reloadInSeconds 秒之间切换图像。

项目结构

在 QmlProject 文件中启用了 image cache

CMake 项目文件

要启用图像缓存

使用多个节点上的 ImageFiles.MCU.resourceCachePolicy 变量设置单个资源的资产缓存策略。这在仅某些图像应具有缓存资格时很有用。

...
        MCU.Config {
                maxResourceCacheSize: 2211840
        }
...
        ImageFiles {
                files: [
                "images/basse-terre-guadeloupe.jpg",
                "images/grand-canyon-arizona.jpg",
                "images/grand-canyon-national-park.jpg",
                "images/Jokulsarlon-glacier-lagoon-iceland.jpg",
                "images/reine-lofoten-islands.jpg",
                "images/sequoia-national-park.jpg",
                "images/sogn-og-fjordane.jpg",
                "images/yosemite-national-park.jpg",
                ]
                MCU.resourceCachePolicy: "OnDemand"
        }
...

如果目标操作系统是 FreeRTOS,则设置堆大小

...
        qul_override_freertos_heap_size(image_cache "8 * 1024 * 1024 + ${cache_size_in_bytes}")
...

现在,每当图像将要绘制时,渲染器都会首先检查缓存。

文件

图像

另请参阅 ImageFiles.MCU.resourceCachePolicy图像缓存.

在某些 Qt 许可下可用。
了解更多信息。