Python Kivy下拉列表不受最大高度的影响
我注意到KivyPython Kivy下拉列表不受最大高度的影响,python,python-3.x,kivy,Python,Python 3.x,Kivy,我注意到Kivyv1.9.2-dev0中的下拉列表小部件有一些奇怪的行为 各国: 最大高度 指示下拉列表可以采用的最大高度。如果None,将采用可用的最大高度,直到达到屏幕的顶部或底部 然而,情况似乎并非如此。以下是该文档页面中的一个示例(稍作修改): 因此,我认为下拉列表将限制为max\u hgt,但更改它不会更改内容的大小-它仍然会在屏幕顶部停止。 这是一个Kivy问题还是我没有正确理解max\u height属性?这似乎确实是一个bug,我刚刚发送了一个pull请求来修复它(),感谢您的报
v1.9.2-dev0
中的下拉列表
小部件有一些奇怪的行为各国:
最大高度
指示下拉列表可以采用的最大高度。如果
None
,将采用可用的最大高度,直到达到屏幕的顶部或底部
然而,情况似乎并非如此。以下是该文档页面中的一个示例(稍作修改):
因此,我认为下拉列表将限制为max\u hgt
,但更改它不会更改内容的大小-它仍然会在屏幕顶部停止。
这是一个Kivy问题还是我没有正确理解max\u height
属性?这似乎确实是一个bug,我刚刚发送了一个pull请求来修复它(),感谢您的报告,并对长时间的延迟表示抱歉
编辑:修复已合并Hmm。。这似乎对我仍然不起作用。我使用pip升级到kivy 1.9.1的最新版本,并运行了上述代码;在max_hgt周围改变没有影响。修复是否仅在开发版本中?不相关的问题:你们知道为什么点击下拉菜单中的按钮会有延迟吗?当按下按钮时,按钮高亮显示之前可能会有半秒的延迟,而在旋转器或下拉菜单外的按钮不会出现这种情况。编辑:当前的1.9.1版本是从一月开始的,所以修复程序当然不在里面。。如果可以运行,我将尝试开发版本。
from kivy.uix.dropdown import DropDown
from kivy.uix.button import Button
from kivy.base import runTouchApp
max_hgt = 1 # This should affect the dropdown, but it doesn't
dropdown = DropDown(max_height = max_hgt)
for index in range(20):
btn = Button(text='Value %d' % index, size_hint_y=None, height=44)
btn.bind(on_release=lambda btn: dropdown.select(btn.text))
dropdown.add_widget(btn)
mainbutton = Button(text='Hello', size_hint=(None, None))
mainbutton.bind(on_release=dropdown.open)
dropdown.bind(on_select=lambda instance, x: setattr(mainbutton, 'text', x))
runTouchApp(mainbutton)