请告诉我为什么这不起作用,整个程序运行正常,它使用主程序中的功能来获取它的文本,但它不会滚动,所以用户赢了& #39;能够查看整个输出。
<AnswerScreen@Screen>:
input_textb: input_textb
ScrollView:
size_hint: (1, None)
do_scroll_y: True
do_scroll_x: False
bar_width: 4
GridLayout:
padding: root.width * 0.02, root.height * 0.02
cols: 1
size_hint_y: None
size_hint_x: 1
height: self.minimum_height
Label:
id: input_textb
text: ""
font_size: root.height / 25
text_size: self.width, None
编辑:
答案 0 :(得分:1)
我认为标签的大小没有设置,我同意可能会让人感到困惑,Label有一个小部件大小(size
作为所有小部件)和texture_size
,它设置为实际显示文本的大小,kivy一开始并没有以任何特定的方式将这两者联系起来,由你来决定一个人如何影响另一个,你做了一半的工作将text_size设置为(width, None)
,强制纹理具有窗口小部件的宽度,但是您缺少交易的其他部分,即您希望窗口小部件与生成的纹理一样高。要使此大小生效,您还必须为Label禁用size_hint_y,因为它位于GridLayout
。
Label:
id: input_textb
text: ""
font_size: root.height / 25
text_size: self.width, None
height: self.texture_size[1]
size_hint_y: None
你应该全力以赴。
答案 1 :(得分:0)
您应该为ScrollView的属性scroll_y
设置一个介于0和1之间的值。