Не могу понять, как передать пользовательское свойство в пользовательский виджет через файл KV.Мое приложение представляет собой простую сетку, которая содержит Button () и TestWidget ().TestWidget () имеет функцию StringProperty () test_property, которая, похоже, не получает данные из файла KV, как это видно из оператора печати в init.Вот несколько простых кодов для примера.
Спасибо.
from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.uix.widget import Widget
from kivy.lang import Builder
from kivy.properties import StringProperty
Builder.load_string("""
<TestWidget>:
<TestGrid>:
Button:
TestWidget:
test_property: 'Test Property'
""")
class TestWidget(Widget):
test_property = StringProperty()
def __init__(self, **kwargs):
super(TestWidget, self).__init__(**kwargs)
print('Test OUTPUT:', self.test_property)
class TestGrid(GridLayout):
pass
class MyApp(App):
def build(self):
return TestGrid()
MyApp().run()