【发布时间】:2021-03-15 10:01:50
【问题描述】:
按照here 的代码,我创建了一个带有圆角的简单按钮,如下所示:
<RoundedButton@Button>:
background_color: 0,0,1,0
canvas.before:
Color:
rgba: (.216,.118,.329,1) if self.state=='normal' else (0,.7,.7,1)
RoundedRectangle:
pos: self.pos
size: self.size
radius: [10,]
RelativeLayout:
pos: self.parent.pos
size: self.parent.size
Label:
text: 'Button Text'
font_size: 20
pos_hint: {'center_x': 0.5,'center_y':0.5}
id: _labeltext
当我在我的 kv 代码中使用此按钮时,我想要一种简单的方法来更改按钮的文本,我想使用 id 值“_labeltext”来完成。 这似乎应该很简单,但我无法找到如何在 KV 代码中而不是在 python 中更改它(作为对操作的响应)。我只想用不同的文本多次重复使用我的按钮设计。例如(我知道这不起作用):
RoundedButton:
self.ids._labeltext.text: 'New Button Text'
谢谢
附:无法在编辑器中正确缩进,抱歉
【问题讨论】:
-
kv中的缩进不正确。请调整您发布的kv以反映实际使用的缩进。RelativeLayout是RoundedButton的一部分吗? -
是的,我在文本编辑器中遇到了这个问题。我粘贴了带有完整缩进的代码,但这并没有复制过来。然后我无法添加其他选项卡来更正它。你知道我是怎么做到的吗?
标签: kivy kivy-language