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表示繼續傳遞觸摸事件,不攔斷(也消費事件).
如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點
疑難解答