如何从Python代码文件设置kivy小部件id

Top*_*ope 3 python widget kivy

我需要帮助将 id 分配给从 python 函数创建的新 kivy 小部件

我试过了 :

old = Label(id = 'old')
Run Code Online (Sandbox Code Playgroud)

和 :

old = Label()
old.id = 'old'
Run Code Online (Sandbox Code Playgroud)

但它似乎不起作用,因为每当我尝试引用小部件时,它都会给我一个错误

Joh*_*son 5

@ikolim是正确的,但是有一种非常丑陋且不推荐的方法来完成你想要的事情:

import weakref

old = Label()
self.ids.add_widget(old)
self.ids['old'] = weakref.ref(old)
Run Code Online (Sandbox Code Playgroud)

这实际上将oldid 添加到字典中(假设self是正确的容器)。更好的方法是只保留对old Label.