You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

KivyMD中MDBottomAppBar的on_action_button事件失效求助

解决MDBottomAppBar内部MDTopAppBar的on_action_button事件无法触发问题

问题出在事件绑定的对象错误:你把on_action_button绑定在了嵌套的MDTopAppBar上,但实际上**MDBottomAppBar才是提供on_action_button事件的组件**,内部的MDTopAppBar并没有这个事件属性。

修正后的KV文件代码

把on_action_button移到MDBottomAppBar节点上即可:

MDBoxLayout:
    orientation: "vertical"

    MDTopAppBar:
        title: " Our Top Bar"
        left_action_items: [["menu",lambda x: app.presser()]]
        right_action_items: [["dots-vertical",lambda x: app.presser()]]

    MDLabel:
        id: my_label
        text:"Some Stuff"
        halign:"center"

    MDBottomAppBar:
        on_action_button: app.presser()
        MDTopAppBar:
            icon: "git"
            mode: "free-end"

说明

  • Python代码无需修改,保持原代码即可。
  • 修改后点击底部AppBar的图标按钮,就能正常触发app.presser()方法,控制台会输出hello。

内容的提问来源于stack exchange,提问作者Hanishkaran Muneswaran

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 18:32:22