Kivy App Error- App.root中的实例无效

时间:2016-11-07 04:07:46

标签: android python kivy

我正致力于构建一个kivy应用。下面的代码是一个简单的Hello World of Sorts。按按钮。标签从“Hello”变为“World”

import kivy
kivy.require('1.9.1') # replace with your current kivy version !

from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.label import  Label
#from tasks import assign_task


class GetTask():
    def __init__(self, **kwargs):

        super(GetTask,self).__init__(**kwargs)
        self.main_label = Label(text = "Hello")
        button = Button(text="Press")
        button.bind(on_press= self.update)

    def update(self):
        self.main_label.text = "World"

class MyApp(App):
   def build(self):
        return GetTask()


if __name__ == '__main__':
    MyApp().run()

我运行时遇到的错误是:

raise Exception('Invalid instance in App.root')
Exception: Invalid instance in App.root

我看了这个 - Kivy: Invalid instance in App.root

我仍然无法弄清楚我做错了什么。请帮忙。谢谢。

1 个答案:

答案 0 :(得分:1)

您的GetTask继承了什么?在我看来,它根本不会从任何东西中继承。尝试将其更改为

class GetTask(Widget):
    #  The rest is like it's in your code.

另请查看我在问题下的评论。但不确定它是否仍然是1.9.1中的问题。