为了账号安全,请及时绑定邮箱和手机立即绑定

Kivy 中“name”和“id”属性的区别,以及何时应该使用它们

Kivy 中“name”和“id”属性的区别,以及何时应该使用它们

慕村9548890 2023-08-22 18:20:00
我找不到与此相关的帖子,所以这里是:我正在研究猕猴桃,我有一些关于它的基础的问题。Kivy 中引用对象的“name:”和“id:”有什么区别?这是我的代码示例,用作示例。请注意,我使用“name”属性引用“Screen”类中的对象,该属性工作得很好,并且我还可以使用“id”属性引用“TextInput”和“Button”中的对象值:<Button>:    size_hint: 0.24, 0.1<TextInput>:    size_hint: 0.4, 0.1ScreenManager:    Screen:        name: 'login_page'        TextInput:            id: email        Button:            id: login_button            text: 'Go to main page'            pos_hint: {"x": 0.38, "top": 0.2}            on_release:                app.root.current = 'main_page'                root.transition.direction = 'left'    Screen:        name: 'main_page'                FloatLayout:            Button:                text: 'Go to login page'                pos_hint: {"x": 0.38, "top": 0.2}                on_release:                    app.root.current = 'login_page'                    root.transition.direction = 'right'
查看完整描述

1 回答

?
慕妹3242003

TA贡献1824条经验 获得超6个赞

这不是一个选择的问题。该name属性是类的一部分Screen,用于ScreenManager操作其子级Screens

当在规则中遇到时,它们由构建器 ( )ids创建。被添加到包含 的根小部件的字典中。kvkivy.lang.builder.Builderidididsid

因此,您只能将该name属性用于 的子级ScreenManager。您可以使用only 来访问属于根小部件规则ids一部分的小部件。kv


查看完整回答
反对 回复 2023-08-22
  • 1 回答
  • 0 关注
  • 117 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信