无法在 kivy 文件中更改 md_bg_color
Cannot change md_bg_color in kivy file
我无法更改 MDToolbar 的背景颜色。当我为我的 ThemeManager() 设置 primary_palette 时,值实际上改变了(我用我的 .kv 文件中的 print() 检查了它),但工具栏的颜色没有。谁能帮帮我?
from kivymd.app import MDApp
from kivymd.theming import ThemeManager
class MainApp(MDApp):
def build(self):
self.theme_cls = ThemeManager()
self.theme_cls.theme_style = "Dark"
self.theme_cls.primary_palette = "Purple"
if __name__ == "__main__":
MainApp().run()
这是 .kv 文件中的代码:
BoxLayout:
orientation: 'vertical'
MDToolbar:
title: "This is an MDToolBar"
md_bg_color: app.theme_cls.primary_color
left_action_items: [['menu', lambda x: print(x)], ['bookmark', lambda x: print(app.theme_cls.primary_color)]]
right_action_items: [['lumx', lambda x: print('HELLO!') if True else print("No")]]
Button:
text: "A button"
您需要在新版本的 kivymd 中删除行 self.theme_cls = ThemeManager() 您不需要再添加它了
我无法更改 MDToolbar 的背景颜色。当我为我的 ThemeManager() 设置 primary_palette 时,值实际上改变了(我用我的 .kv 文件中的 print() 检查了它),但工具栏的颜色没有。谁能帮帮我?
from kivymd.app import MDApp
from kivymd.theming import ThemeManager
class MainApp(MDApp):
def build(self):
self.theme_cls = ThemeManager()
self.theme_cls.theme_style = "Dark"
self.theme_cls.primary_palette = "Purple"
if __name__ == "__main__":
MainApp().run()
这是 .kv 文件中的代码:
BoxLayout:
orientation: 'vertical'
MDToolbar:
title: "This is an MDToolBar"
md_bg_color: app.theme_cls.primary_color
left_action_items: [['menu', lambda x: print(x)], ['bookmark', lambda x: print(app.theme_cls.primary_color)]]
right_action_items: [['lumx', lambda x: print('HELLO!') if True else print("No")]]
Button:
text: "A button"
您需要在新版本的 kivymd 中删除行 self.theme_cls = ThemeManager() 您不需要再添加它了