Я работаю над приложением, в котором на одном из моих экранов есть метки и поля ввода текста. Всякий раз, когда пользователь переходит на этот экран, я бы хотел, чтобы какая-то функция load()
проверяла данные в файле JSON. Если он находит данные, он может загрузить эти данные на экран в соответствующих полях ввода текста. Если нет, то не беспокойтесь.
Я могу достаточно легко сохранять и извлекать данные из файла JSON, но, судя по всему, не могу понять, как сохранить эту информацию в экран, о котором идет речь, всякий раз, когда я нахожусь там! Есть ли способ запускать функцию каждый раз, когда появляется экран, который заполнит эти поля ввода текста?
texttest.kv
WindowManager:
MainWindow:
id: main_screen
SetupWindow:
id: setup_screen
<SetupWindow>
name: "setup"
hostpy: hostkv
GridLayout:
cols:1
GridLayout:
cols: 2
Label:
text: "Host or IP: "
TextInput:
id: hostkv
multiline: False
texttestapp.py
...
...
...
class MainWindow(Screen):
pass
class SetupWindow(Screen):
hostpy = ObjectProperty(None)
def __init__(self,**kwargs):
super(SetupWindow,self).__init__(**kwargs)
self.hostpypy.Text = "This is a test"
class WindowManager(ScreenManager):
pass
...
...
...
Как видите, я пробовал с __init__(self,**kwargs)
, но, похоже, это неправильное решение. Что я могу сделать для достижения sh того, что мне нужно?