android控件实现单击拖动效果
程序员文章站
2022-05-21 11:18:41
本文实例为大家分享了android控件实现单击拖动效果的具体代码,供大家参考,具体内容如下分析setonclicklistenersetonclicklistener 可以接收控件的单击动作,无返回值...
本文实例为大家分享了android控件实现单击拖动效果的具体代码,供大家参考,具体内容如下
分析
setonclicklistener
setonclicklistener 可以接收控件的单击动作,无返回值
要想拖动控件,就要利用 setontouchlistener 自己定义了
setontouchlistener
通过按下时的坐标和移动时的坐标之间的差值,来计算移动的距离,然后更改控件的位置以达到拖动的目的
因 touch 事件执行完成后如果返回false则会继续执行单击事件,不是我们想要的。如果直接返回true代表处理完了事件,不再执行单击事件,也不是我们想要的。
这时候就要判断什么时候返回true,什么时候返回false,以达到同时实现单击 + 拖动的目的
实例代码
绑定事件
重写ontouchlistener
注意事项
action_up为手指抬起时执行的事件,单击事件的判断放在此处,如果按下时的坐标和抬起时的坐标相差不大,我们视作单击动作,后期如果需要处理长按动作或双击动作,道理差不多。
完整代码
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。