Kivy refresh layout (Async Loading)(Kivy 刷新布局(异步加载))
问题描述
我有一个 ListView,其中每个项目都有一个 AsyncImage 和一个标签.加载图像时,它会显示每个项目之间有间隙的布局.
I have a ListView that where each item has a AsyncImage and a Label. While the images load it shows the layout with gaps between each item.
-------
Item
-------
Item
-------
当第一次交互发生(发生滚动)时,布局刷新并且间隙消失.
When the first interaction happens (a scroll occurs), the layout refreshes and the gaps disappear.
-------
Item
-------
Item
-------
我真的很想在图像加载完成后刷新布局.如何刷新布局?
I'd really like to have the layout refresh when an image finishes loading. How do I refresh a layout?
推荐答案
通常你可以通过调用 widget.canvas.ask_update().
Usually you can ask the widget to update it's canvas by calling widget.canvas.ask_update().
对于布局,您可以尝试通过调用 layout_instance.do_layout().
For a layout you could try triggering the layout of the widgets inside it by calling layout_instance.do_layout().
这篇关于Kivy 刷新布局(异步加载)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Kivy 刷新布局(异步加载)


基础教程推荐
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 筛选NumPy数组 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01