Как задать размер отдельным элементам GridLayout?
Хочу задать разные height элементам списка, но Grid игнорирует размеры элементов и ставит одинаковую для всех height 120, даже прописанный row_force_default=False не помогает.
Вот как это происходит.
Заполняю Grid циклом из разных элементов Button, ToggleButton, Image и Label. Код Grid:
self.layout = GridLayout(cols=1,rows=0, padding=10, spacing=0,
width=Window.width,size_hint=(None, None),
row_force_default=False, row_default_height=120)
Потом просто запихиваю Grid в ScrollView для прокрутки:
root = ScrollView(size_hint=(None, None), size=(Window.width, Window.height),
pos_hint={'center_x': .5, 'center_y': .5}, do_scroll_x=False)
Ответы (1 шт):
Автор решения: Karlson21
→ Ссылка
В .py можно так:
class MyApp(App):
def build(self):
grid = GridLayout(cols=3)
grid.add_widget(Button(text='first'))
grid.add_widget(Button(text='second'))
anchor = AnchorLayout()
anchor.add_widget(Button(size_hint_x=None, height=100, text='third'))
grid.add_widget(anchor)
return grid
MyApp().run()