所以我正在制作一个程序,它将一堆标签连接到一个网格布局。我希望其中一些标签位于屏幕的"下方",以便您可以向下滚动到它。但是,我在保持当前格式并同时滚动时遇到问题。
下面是我想要的,屏幕下方有"stuff7"标签。但是我无法滚动。不可滚动屏幕的图像
但是,我注意到当我放size_hint_y: None
时,我可以滚动,但它完全搞砸了我的格式。 格式混乱,但能够滚动
以下是我的 MRE KV 代码
#:import utils kivy.utils
<HomeScreen>:
FloatLayout:
canvas:
Color:
rgb: utils.get_color_from_hex("#FFFFFF")
Rectangle:
size: self.size
pos: self.pos
ScrollView:
size: self.size
GridLayout:
rows: 6
cols: 1
spacing: 10
size_hint_y: None
height: self.minimum_height
width: self.minimum_width
Label:
text:"stuff1"
color: "black"
size_hint: 1,.18
Label:
text:"stuff2"
color: "black"
size_hint: 1,.18
Label:
text:"stuff3"
color: "black"
size_hint: 1,.18
Label:
text:"stuff4"
color: "black"
size_hint: 1,.18
Label:
text:"stuff5"
color: "black"
size_hint: 1,.18
Label:
text:"stuff6"
color: "black"
size_hint: 1,.18
Label:
text:"stuff7"
color: "black"
size_hint: 1,.18
如果您将height: self.minimum_height
用于GridLayout
,则不能将size_hint: 1,.18
用于Labels
。GridLayout
正试图根据其子项(Labels
)的height
来改变其height
。但是Labels
正试图根据GridLaout
的height
来设定他们的height
。尝试将Labels
修改为:
Label:
text:"stuff2"
color: "black"
size_hint: 1, None
height: self.texture_size[1]