python-3.x - 如何在 KivyMD 中保存用户的输入
问题描述
我制作了一个简单的应用程序来收集用户的输入并将其排列为列表,但我该如何保存它。我想保存用户的输入,所以每当应用程序启动时,之前的输入都是可用的。我认为 with 与kivy.json
或类似的东西有关(我真的不知道),但我不知道如何实现它。
我真的很感激任何帮助,在此先感谢!
这是我的 main.py 文件。
from kivymd.app import MDApp
from kivymd.uix.list import OneLineIconListItem, IconLeftWidget
from kivy.core.window import Window
Window.size = (300, 530)
class MainApp(MDApp):
def build(self):
self.theme_cls.primary_palette = 'Gray'
self.theme_cls.primary_hue = '200'
self.theme_cls.theme_style = 'Dark'
def add_item(self, text):
new_list_item = OneLineIconListItem(text=text)
new_list_item.add_widget(
IconLeftWidget(icon="pin")
)
self.root.ids.listcontainer.add_widget(new_list_item)
self.root.ids.listinput.text = ''
if __name__ == "__main__":
app = MainApp()
app.run()
这是我的 .kv 文件
MDBoxLayout:
orientation: 'vertical'
id: box
MDToolbar:
title: 'MyApp'
pos_hint: {'top': 1}
MDTextField:
id: listinput
hint_text: 'Add Item'
mode: 'rectangle'
size_hint_x: .9
pos_hint: {'center_x': .5}
text_validate_unfocus: False
on_text_validate: app.add_item(listinput.text)
ScrollView:
MDGridLayout:
cols: 1
adaptive_height: True
MDList:
id: listcontainer
非常感谢您的帮助,非常感谢您的帮助。
解决方案
推荐阅读
- html - 如何将选定的按钮存储在参数中?
- mysql - 使用 select 语句作为外部 select 语句的限制
- android - 如何将 Android Room 与外部库提供的 POJO 一起使用?
- windows - 我的 openpose 构建没有必要的 .bin 文件。根据installation.md 使用CMake 构建
- c - 编写一个程序,使用 for 循环遍历这个数组,显示存储在每个索引处的值
- javascript - 删除窗口调整大小时附加的脚本
- ruby - Ruby 退出后,STDIN.read_nonblock 会弄乱其他程序
- python - 如何填充 Pandas 系列中缺失的元素?
- ansible - 有没有办法在剧本中定义 ansible 库存路径?
- javascript - 选中多个复选框时,表单字段应填充公共字段