我正在尝试在 kivymd 中进行网格布局。已创建 GridLayout 但宽度未填满屏幕。kivymd中如何扩展列的宽度以适应屏幕?
我使用了 kivymd 文档中的示例并使用它创建了网格布局。
app.py
from kivymd.app import MDApp
from kivy.uix.screenmanager import Screen, ScreenManager
from kivy.lang import Builder
from main_screen_str import helper_string
from kivy.core.window import Window
Window.size = (300, 500)
class MainScreen(Screen):
pass
class MainApp(MDApp):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.sm = ScreenManager()
self.sm.add_widget(MainScreen(name="main_screen"))
self.main_str = Builder.load_string(helper_string)
def build(self):
screen = Screen()
screen.add_widget(self.main_str)
return screen
if __name__ == '__main__':
MainApp().run()
这是构建器字符串。网格布局已创建,但宽度不适合屏幕。如何扩展网格布局中单个列的宽度?
构建字符串
helper_string = """
ScreenManager:
MainScreen:
<MainScreen>:
name: 'main_screen'
MDGridLayout:
cols: 3
MDIconButton:
icon: "android"
theme_text_color: "Custom"
text_color: app.theme_cls.primary_color
MDIconButton:
icon: "android"
theme_text_color: "Custom"
text_color: app.theme_cls.primary_color
MDIconButton:
icon: "android"
theme_text_color: "Custom"
text_color: app.theme_cls.primary_color
MDIconButton:
icon: "android"
theme_text_color: "Custom"
text_color: app.theme_cls.primary_color
MDIconButton:
icon: "android"
theme_text_color: "Custom"
text_color: app.theme_cls.primary_color
MDIconButton:
icon: "android"
theme_text_color: "Custom"
text_color: app.theme_cls.primary_color
"""
冉冉说
相关分类