如何使用回收视图kivy

时间:2019-02-06 13:55:19

标签: python-3.x kivy

我正在从数据库中检索数据,我想使用kivy应用程序向用户显示这些数据。我打算使用几个屏幕

现在我正在使用循环并为每个数据创建很多标签小部件。 我读到最好对大型数据集使用回收视图。 我想在纯python中使用此回收视图,而不使用kv文件,并且我没有找到任何示例。下面是我的班级,这是我的主屏幕。我在代码的另一部分中调用该类。

class Base(Screen):
def __init__(self,name):
    super(Base, self).__init__()
    self.lay=GridLayout()
    self.name=name
    self.bout=['[color=33ff99]Refresh[/color]','',"","","","","","","","",""]
    self.data=runsql2()
    self.lay.cols = 11
    self.titre=['[color=ff9900]Market[/color]', '[color=ff9900]B/S[/color]', '[color=ff9900]Volume[/color]', '[color=ff9900]Contract[/color]',
                '[color=ff9900]C/P[/color]', '[color=ff9900]Expiry[/color]', '[color=ff9900]Strike[/color]', '[color=ff9900]Price[/color]',
                '[color=ff9900]Account[/color]', '[color=ff9900]Give up Member[/color]', '[color=ff9900]Allocation Account[/color]']


    for i in range(11):
        self.lay.add_widget(Label(text='', size_hint=(1, 0.15)))
    for j in range(11):
        self.lay.add_widget(Label(text=str(self.titre[j]),size_hint=(0.2,0.2),markup=True))
    long = len(self.data)
    for i in range(long):
        for j in range(11):
            self.lay.add_widget(Label(text=str(self.data[i][j])))
    self.add_widget(self.lay)

所以基本上我想用一个回收视图小部件替换所有这些循环。 谢谢您的帮助。

0 个答案:

没有答案