《Python+Kivy(App开发)从入门到实践》自学笔记:高级UX部件——RecycleView遍历并显示数据

章节知识点总览

5.6 RecycleView遍历并显示数据

        RecycleView遍历并显示数据用来看大型数据的选定部分,旨在防止生成大量用于显示数据的小部件带来的性能下降。

        一般情况下,我们将待显示数据添加到字典中,再将这些数据组成列表赋值给data属性,通过data生成视图,并根据需要选择对应的viewclass属性,再使用这些字典生成实例。

        5.6.1 使用方法

        其设计基于MVC(模型-视图_控制器)模式,实例化RecycleView时,它将自动创建视图和数据类,但是必须手动创建布局类型并将其添加到RecycleView中。在使用布局管理器时,布局管理器必须作为子级包含在RecycleView的小部件树中的某个位置,以便可以找到视图端口。

        实例: RecycleView遍历并显示数据的使用方法

        新建一个recycleview.py文件,在其中将待遍历显示的数据处理好并赋值给data属性,具体代码如下:

注意:这里继承的时RecycleView遍历并显示数据的使用方法,而非之前类似的布局类 

from kivy.app import App
from kivy.uix.recycleview import RecycleView

class RecycleViewWidget(RecycleView):
    def __init__(self,**kwargs):
        super().__init__(**kwargs)

        self.data = [{'text':str(x)}for x in range(100)]

class RecycleViewApp(App):
    def build(self):
        return RecycleViewWidget()

if __name__ == '__main__':
    RecycleViewApp().run()

        根据recycleview.py文件中RecycleViewApp()类 ,新建recycleview.kv文件,在文中使用Label标签来显示遍历的数据,并设置RecycleBoxLayout布局(非BoxLayout布局)布局排列子项,具体代码如下:

<RecycleViewWidget>:
	viewclass:'Label'
	RecycleBoxLayout:
		default_size:None,dp(56)
		default_size_hint:1,None
		size_hint_y:None
		height:self.minimum_height
		orientation:'vertical'

        运行recycleview.py文件,结果如下图:

4dd19151ae944e42963a19d5c9121bfd.png

        5.6.2 常用属性

        RecycleView常用属性

属性说明
data当前RecycleView使用的数据,格式为多个字典组成的列表,例[{'text':1},{'text':2}]
viewclass当前layout_manager使用的视图类,例如:Label
key_viewclass获取或设置当前的键
view_adapter表示数据集中项目的视图,使用AliasProperty类设置
layout_manager布局管理
data_model维护数据集的数据模型
refresh_from_data(*largs,**kwargs)数据更改时应调用此方法,此方法自动绑定到该类的on_data_changed()方法
refresh_from_layout(*largs,**kwargs)当布局更改或需要更改时,应调用此方法,通常在布局参数已更改且需要更新计算布局时调用
refresh_from_viewport(*largs)当窗口更改并且必须更新显示的数据时,应调用此方法,否则数据和布局都不会重新计算
add_widget添加一个新的小部件作为此小部件的子级
remove_widget(widget,*largs)从该小部件的子级中删除一个小部件

上一篇:高级UX部件——Spinner选择框

下一篇:高级UX部件——TabbedPanel选项面板

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

静候光阴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值