#python #kivy #label #scrollview #boxlayout
Вопрос:
У меня есть ScrollView
внутренняя часть a BoxLayout
, которая довольно резко меняет размер при изменении размера экрана. Я создаю приложение для iOS, которое отображает текст внутри a ScrollView
в верхней половине экрана, затем у меня есть не прокрутка Label
непосредственно под ним.
Я использовал iPhone 12/13 для дизайна макета, однако, когда я запускаю его на iPhone 8 (с меньшим размером экрана), ScrollView
Label
текст под ним значительно перекрывается. Когда я запускаю два разных симулятора телефона Xcode бок о бок, ScrollView
область на iPhone 8 на самом деле, кажется, увеличивается в размерах по какой-то странной причине.
Я использовал size_hint
и pos_hint
для всех виджетов, которые в целом работали нормально, просто не совсем с этим ScrollView
. Я попытался настроить все размеры всего, но, похоже, нет счастливой середины, которую я мог бы использовать для обоих типов экранов.
Я использовал height
его в BoxLayout
качестве родителя для ScrollView
, и не уверен, правильно ли я его использую.
Я включу BoxLayout
ScrollView
в него свой со своим. Пожалуйста, не мог бы кто-нибудь взглянуть, не делаю ли я здесь что-то явно неправильное? Я надеюсь, что мне не нужно создавать разные макеты для каждого типа экрана.
BoxLayout: pos_hint: {"top": .9, "center_x": .5} size_hint: 1, .3 size_hint_y: None height: 460 ScrollView: Label: id: brief_res_1 markup: True font_size: '13sp' do_scroll_x: True size_hint_y: None size_hint_x: None size: self.texture_size halign: "left" valign: "center" text: ""
Комментарии:
1. Я верю, что вы, возможно, захотите сменить свой
size_hint: 1, .3
наsize_hint_x: 1
вместо этого, это может помочь2. Я изменил size_hint на size_hint_x и сделал его равным 1, а size_hint_y изменил на .3, и это сработало очень хорошо. Действительно ценю это, спасибо.