Я пытаюсь центрировать текст TextInput вертикально в Kivy. Но решения пока нет.
Как я могу сделать valign для ввода текста в файле kv? Также, чтобы по центру было удобно знать, как это сделать.
Для ярлыков я проверил пример выравнивания текста от Kivy и там работает alginment, потому что вы можете использовать "valign" и "halign" для выравнивания, но недоступные для TextInputs.
Может быть, трюк с текстурой может помочь, но мне нужно проверить, как это работает. Я видел такой трюк для ярлыка, но я не знаю, работает ли он для 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:
- Buttonheight1 - это константа с набором kv
- Canvas.after предназначен только для отладки размера метки
- Текст ввода текста показывает размер шрифта как фиктивный текст
Возможно, это просто исправить, но я довольно новичок в Kivy и не нашел примера для этого.
Вот как это выглядит на данный момент:
(Примечание: кнопка ОК на скриншоте отсутствует в коде kv выше)