我试图在Kivy中垂直居中文本输入。 但还没有解决办法。在
如何对kv文件中的文本输入进行验证?水平居中也很好,知道怎么做。在
对于标签,我已经检查了Kivy的文本对齐示例,那里的alginment是有效的,因为在那里你可以使用'valign'和'halign'来进行对齐,但是文本输入不可用。在
也许一个与纹理大小有关的技巧可能会有帮助,但我需要检查这是如何工作的。我见过这样的标签技巧,但我不知道它是否适用于TextInput。在
这是我现在的kv代码:
#: set Buttonheight1 40
BoxLayout:
size_hint_y: None
height: Buttonheight1
Label:
id: _number_label
text: "Number:"
font_size: 10
size_hint_x: None
width: 50
canvas.after:
Color:
rgba: 1,0,0,.5
Rectangle:
pos: self.pos
size: self.size
TextInput:
multiline: False
size_hint_y: None
height: _number_label.height
#padding_top: 10
font_size: 10
text: str(self.font_size)
#text: '%s, %s' % (self.get_center_x(), self.get_center_y()) #position test
kv规范说明:
也许这很容易修复,但我对Kivy还是个新手,还没有找到一个例子。在
以下是目前的情况:
(注:截图中的OK按钮不在上面的kv代码中)
正如AWolf在评论中所建议的那样。 这似乎最有效:
看一下api,我建议您可以尝试使用填充,因为您可以指定:
也许可以使用
padding_top
和/或padding_bottom
将文本垂直居中。在对我有效的方法是使用
pos_hint
,如下所示:相关问题 更多 >
编程相关推荐