基维滚动视图打破屏幕布局



所以我正在制作一个程序,它将一堆标签连接到一个网格布局。我希望其中一些标签位于屏幕的"下方",以便您可以向下滚动到它。但是,我在保持当前格式并同时滚动时遇到问题。

下面是我想要的,屏幕下方有"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用于LabelsGridLayout正试图根据其子项(Labels)的height来改变其height。但是Labels正试图根据GridLaoutheight来设定他们的height。尝试将Labels修改为:

Label:
text:"stuff2"
color: "black"
size_hint: 1, None
height: self.texture_size[1]

最新更新