【发布时间】:2022-05-04 23:18:35
【问题描述】:
我正在使用 kivymd 创建一个输入对话框。每当我尝试从文本字段中获取文本时,它都不会输出文本,而是看起来文本不存在。 (对话框刚刚弹出,按钮工作正常)。
部分kivy代码
<Content>
MDTextField:
id: pin
pos_hint: {"center_x": 0.5, "center_y": 0.5}
color_mode: 'custom'
line_color_focus: [0,0,1,1]
部分python代码
class Content(FloatLayout):
pass
class MenuScreen(Screen):
def __init__(self, **kwargs):
super(MenuScreen, self).__init__(**kwargs)
def show_confirmation_dialog(self):
# if not self.dialog:
self.dialog = MDDialog(
title="Enter Pin",
type="custom",
content_cls=Content(),
buttons=[
MDFlatButton(
text="cancel",on_release=self.callback
),
MDRaisedButton(
text="[b]ok[/b]",
on_release=self.ok,
markup=True,
),
],
size_hint_x=0.7,
auto_dismiss=False,
)
self.dialog.open()
def callback(self, *args):
self.dialog.dismiss()
def ok(self, *args):
pin = Content().ids.pin.text
if pin == "":
toast("enter pin")
else:
toast(f"pin is {pin}")
【问题讨论】:
-
对不起。我是堆栈溢出的新手,这是我能给出的最小的例子。谢谢
-
不要再次启动 Content 类,保存到 var 并传递它,它对我有用
-
@alfex4936 能否说明一下将文本保存到 var 以供传递的位置?
标签: kivy python-3.7 kivymd