时间:2020-10-14 10:05:18 | 栏目:Android代码 | 点击:次
Android 滑动监听的实例详解
摘要: ScollBy,ScollTo是对内容的移动,view.ScollyBy是对view的内容的移动
view,ScollTo是对内容的移动(移动到指定位置),view.ScollyBy是对view的内容的移动(移动距离)
在次activity中,当手指点击TextView ,此时是ViewGroup 响应还是TextView响应呢?
代码实践:
在activity中重写onTouchEvent():
public boolean onTouchEvent(MotionEvent event) { switch (event.getAction()){ case MotionEvent.ACTION_DOWN: float rawY = event.getRawY(); float y = event.getY(); Log.i(TAG, "rawY: "+rawY+",____"+y); break; } return super.onTouchEvent(event); }
在textView中添加滑动监听:
imageView.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()){ case MotionEvent.ACTION_DOWN: float rawY = event.getRawY(); float y = event.getY(); Log.i(TAG, "imageView_rawY: "+rawY+",____"+y); break; } return false; } });
在两个的返回值都是false时:
先响应textView的触摸事件,在响应Activity触摸事件
当activity的触摸事件返回值为true时:
同上
当TextView的触摸事件返回值为true时:
只响应textView的触摸事件
总结:
OnTouhEvent的返回值 true表示触摸事件不往上传递,消费此触摸事件,false表示继续传递触摸事件,不拦断(也消费事件).
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!