如何使下拉菜单在Kivy中滚动?

时间:2019-01-31 23:58:58

标签: python kivy

我创建了一个用于语言选择的下拉菜单。但是,由于有很多语言选项,我需要使下拉菜单可滚动。

    self.language_dropdown.clear_widgets()
    for root, dirs, files in os.walk('lang/'):
        for file in files:
            filename, extension = os.path.splitext(file)
            if extension == '.csv':
                btn = CustomDropDownButton(size_hint_y=None, height=57)
                btn.lbl.text = self.dictLanguage[filename]
                btn.bind(on_release=lambda btn: self.language_dropdown.select(btn.lbl.text))
                self.language_dropdown.add_widget(btn)
                Clock.schedule_once(btn.draw_background, 0)
    self.mainbutton.bind(on_release=self.language_dropdown.open)
    self.language_dropdown.bind(on_select=lambda instance, x: setattr(self.mainbutton.lbl, 'text', x))
    self.mainbutton.lbl.text = self.dictLanguage[self.config['GUI'].get('language')]
    Clock.schedule_once(self.mainbutton.draw_background, 0)

这是我用过的,这与Kivy文档建议的方式非常相似。问题是,我无法将下拉列表放到滚动视图中,因为以dropdown.open()的方式打开了下拉列表。

我想知道是否有一种很好的方法可以使它可滚动,以便可以在下拉菜单中放置许多语言选项。

0 个答案:

没有答案
相关问题