DragBehavior仅在Kivy中使用on_touch_up第一次工作

时间:2017-12-03 03:58:25

标签: python python-3.x kivy

当我使用带有on_touch_up的DraggableImage类(一个继承DragBehavior和Image的类)时,一旦我拖放图像,就不能再拖动图像了。

我不知道为什么会这样,以及如何解决。

from kivy.app import App
from kivy.uix.behaviors import DragBehavior
from kivy.uix.image import Image

class DraggableImage(DragBehavior, Image):
    def on_touch_up(self, touch):  # without this (e.g. "pass" here), image is always draggable.
        print("This is test")

class TestApp(App):
    def build(self):
        pass

if __name__ == '__main__':
    TestApp().run()

test.kv

BoxLayout:
    DraggableImage:
        source: "example.png"

1 个答案:

答案 0 :(得分:0)

on_touch_up()方法中,您应该添加对

的调用
super(DraggableImage,self).on_touch_up(touch)

因为你要覆盖DragBehavior中的on_touch_up()方法。