最近项目中要做一个音乐播放悬浮按钮的功能,最终实现效果如下:

悬浮窗布局文件就不放了,就是水平LinearLayout里面放几个ImageView。
做的过程当中遇到一个问题,就是悬浮窗是可以任意拖拽的,悬浮窗里面的按钮是可以点击的,比如暂停,下一曲,关闭悬浮窗等。
按常规思路,先给整个悬浮窗setOnTouchListener,然后再给你里面的按钮setOnClickListener,点击运行,结果发现,点击事件是可以响应,拖拽也没问题,但是当手指放在ImageView上拖拽时,onTouchListener事件无法响应。
此时第一感觉就是setOnTouchListener和setOnClickListener冲突了,需要解决一下冲突。无奈自己对Android事件分发消费机制一直都是一知半解的,一般都是出了问题需要解决,第一时间先百度,没有解决方案就只能去研究Android事件分发消费机制了,但是研究完也都是懵懵懂懂的,今天就决定把这个难点彻底消化掉。
主要研究了这篇文章

2213

被折叠的 条评论
为什么被折叠?



