Как поставить лучший размер и пос подсказки с кивом - PullRequest
0 голосов
/ 17 марта 2020

Сейчас я работаю над мобильным приложением kivy. У меня есть несколько ярлыков и кнопок, и они располагаются нормально, если я запускаю программу, но когда я сужаю окно, текст на ярлыках и кнопках выходит за пределы экрана. Кто-нибудь может предложить лучшие подсказки по позиционированию и размеру, чтобы даже при минимизации окна они не go находились вне экрана? Вот мой код:

Label:
    color: 1,0,0,1
    pos_hint:{ "top":5,"left": 1}
    size_hint:1,1
    text: "Which number cannot be written in roman numbers?"
    font_size: 30
BoxLayout:
    Button:
        pos_hint:{"top": 1,"left": 1}
        size_hint:1,1
        text: "0"
        font_size: 30
        size: 30,30
        on_release:
            self.background_color = 250,255,0,0.3
    Button:
        pos_hint:{"top": 1,"left": 1}
        size_hint:1,1
        text: "1 million"
        font_size: 30
        size: 30,30
        on_release:
            self.background_color = 1, 0, 0, 1
BoxLayout:
    Button:
        pos_hint:{"top": 1,"left": 1}
        size_hint:1,1
        text: "999"
        font_size: 30
        size: 30,30
        on_release:
            self.background_color = 1, 0, 0, 1
    Button:
        pos_hint:{"top": 1,"left": 1}
        size_hint:1,1
        text: "10 million"
        font_size: 30
        size: 30,30
        on_release:
            self.background_color = 1, 0, 0, 1

1 Ответ

0 голосов
/ 17 марта 2020

Четыре ваших Label и Button, вы можете просто установить размер текста и либо сократить текст по мере необходимости, либо расширить его в любом направлении, например:

Label:
    text: 'this is some really long text which will be shortened to keep it inside the Label bounds'
    text_size: self.size
    shorten: True
    shorten_from: 'right'

Вы можете используйте те же свойства для Button. Я полагаю, что вы можете также расширить Label или Button, например:

Label:
    text_size: [self.parent.width, None]
    size: self.texture_size

Здесь, когда горизонтальный размер текста становится слишком большим текст просто вырастет до новой строки

...