我用kivy,kivymd和python做了一个简单的应用,md卡中的on_release功能不能用,我的代码片段如下。
from kivy.lang import Builder
from kivymd.app import MDApp
kv = '''
Screen:
MDCard:
size_hint: None, None
size: "280dp", "180dp"
pos_hint: {"center_x": .5, "center_y": .5}
ripple_behavior: True
on_release:print("worked")
'''
class TestCard(MDApp):
def build(self):
return Builder.load_string(kv)
TestCard().run()
0
投票
投票
你必须注意你在kv字符串中使用的tab。首先你在Screen声明之前使用了一个tab。这是不对的。然后你必须在你声明MDCard之后设置tab来设置它的属性。像这样我就能用了。
from kivy.lang import Builder
from kivymd.app import MDApp
KV = '''
Screen:
MDCard:
size_hint: None, None
size: "280dp", "180dp"
pos_hint: {"center_x": .5, "center_y": .5}
ripple_behavior: True
on_release: print("worked")
'''
class TestCard(MDApp):
def build(self):
return Builder.load_string(KV)
TestCard().run()
0
投票
投票
怎么了,你收到错误信息了吗?你还需要将你的代码缩进到 MDCard
小部件