【问题标题】:KivyMD close the MDFloatingActionButtonSpeedDialKivyMD 关闭 MDFloatingActionButtonSpeedDial
【发布时间】:2022-07-20 17:00:34
【问题描述】:

我在我的项目中添加了一个 MDFloatingActionButtonSpeedDial,它工作正常。但我希望它在用户单击其中一个按钮后关闭。我在文档中找不到有关如何实现此目的的任何内容。

我尝试将小部件状态设置为“关闭”,但这会产生奇怪的行为。按钮开始在屏幕上移动。

kv文件

<ScreenDrawPlay>
    PaintingWidget:
        id: paint_canvas

    MDFloatingActionButtonSpeedDial:
        id: draw_float_button
        data: app.draw_button_data
        root_button_anim: True
        #hint_animation: True
        #on_touch_up: self.state = 'close'
        callback: app.draw_float_pressed

功能

    def draw_float_pressed(self, instance):
        #print(instance.icon)
        self.screen_draw_play.ids.draw_float_button.state = 'close'
        if instance.icon == 'palette':
            self.color_dialog_open()
        elif instance.icon == 'check':
            self.upload_turn()

【问题讨论】:

    标签: python kivymd


    【解决方案1】:

    因此,在查看 KivyMD 源代码后,看起来正确的方法是调用...

    .close_stack()
    

    .state 属性仅用于读取以查找当前状态

    【讨论】:

      【解决方案2】:

      安提凯瑟拉! 你究竟是如何用 close_stack() 关闭堆栈的!我没有任何成功,因为我收到了这个错误:

      " AttributeError: 'MDFloatingBottomButton' 对象没有属性 'close_stack' "

      你到底是怎么调用这个方法的?

      【讨论】:

        猜你喜欢
        • 2020-05-23
        • 1970-01-01
        • 2021-12-04
        • 1970-01-01
        • 2021-04-21
        • 2022-01-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多