【问题标题】:How can I pre-load or cache images with Python 2.7 and Kivy如何使用 Python 2.7 和 Kivy 预加载或缓存图像
【发布时间】:2018-03-05 05:25:04
【问题描述】:

这可能是一个基本问题,但我仍在学习 Kivy,我不知道该怎么做。

我使用 Python 2.7 和 Kivy 编写的程序会读取一个充满图像的文件夹,然后在用户单击时一次显示一个。

现在,我正在调用一个函数,该函数通过单击按钮读取下一个图像。这意味着我在每张图片之间都有一点延迟。

我想在一开始就加载所有图像,或者至少加载其中的一些,这样我在点击图像时就不会出现延迟。

我不确定这是在 Python 端还是 Kivy 端完成,但我感谢任何帮助!

【问题讨论】:

    标签: python python-2.7 kivy


    【解决方案1】:

    当文件夹中有很多图像时,将所有图像加载到内存中将是一个问题,但是您可以将下一个图像作为源的隐藏图像(甚至不需要将图像添加到小部件树,你可以把它保存在你的应用程序的一个属性中),所以每次用户加载下一张图片时,它都会立即显示,因为它已经被缓存了,当用户正在查看这张图片时,第二张图片小部件,它保持不可见, 将开始加载下一张图片。

    当然,如果你想加载超过 1 张图片,你必须做一些更聪明的事情,你可以在内存中拥有一个 Image 小部件列表,并始终将当前显示的源替换为下一个预取)。

    【讨论】:

      猜你喜欢
      • 2013-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-23
      • 1970-01-01
      • 1970-01-01
      • 2023-03-20
      相关资源
      最近更新 更多