Kivymd卡按钮功能

我用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 小部件