【问题标题】:KivyMD Error: ValueError: KivyMD: App object must be initialized before loading root widgetKivyMD 错误:ValueError:KivyMD:App 对象必须在加载根小部件之前进行初始化
【发布时间】:2021-03-03 06:19:49
【问题描述】:

我该如何解决这个错误:

ValueError: KivyMD: App object must be initialized before loading root widget.

我的代码:

kv = Builder.load_file("my.kv")

class MyMainApp(MDApp):

    def __init__(self, **kwargs): 
        App.__init__(self)   
        theme_cls = ThemeManager()


if __name__ == "__main__":
    MyMainApp().run()

网上的一切都说我必须将我的 .kv 文件移动到我的 .py 文件中。有没有办法保留我的 .kv 文件?

【问题讨论】:

    标签: python kivymd


    【解决方案1】:

    https://kivymd.readthedocs.io/en/latest/themes/material-app/#kivymd.app.MDApp.theme_cls

    class MainApp(MDApp):
        def build(self):
            self.theme_cls.primary_palette = "Teal"
    

    【讨论】:

    • 我不确定你的意思。我在之前、之后添加了这个,并替换了我的 init 定义。我仍然遇到同样的错误。
    • 文档里都写的很清楚,你看不懂的我看不懂。
    • 对不起,我是 Kivy 的新手,但我按照文档所说的做了,但仍然遇到同样的错误。我不确定更改代码的主题如何解决在根小部件之后加载应用程序的错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-12
    • 2016-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多