Android点击事件的处理顺序

Android点击事件涉及的顺序有六方面

  1. 一个点击发生时的传递顺序
  2. 点击事件传递完成后的处理顺序
  3. 点击事件是由怎么捕捉的
  4. 同一层级的onClick ontouch ontouchevent等方法的处理顺序
  5. 点击事件类型都有哪些
  6. 事件拦截方式
  7. 处理完事件后的返回值

问题1:1个点击事件发生后,事件先传到Activity、再传到ViewGroup、最终再传到 View
问题2:按点击事件的传递顺序,如果上层没有拦截,就会向下传递,如果最下层的也没有处理,则依次再向上传递
问题3:点击事件由OnTouchListener侦听器的 onTouch方法,OnClickListener侦听器中的onClick()方法或view对象的onTouchEvent方法处理
问题4:优先级顺序依次为OnTouchListener侦听器的 onTouch方法,view对象的onTouchEvent方法处理、OnClickListener侦听器中的onClick()方法
问题5:onTouch定义了鼠标按下,抬起等事件类型,GestureDetector类定义了更丰富的手势事件
问题6:定义一个实现了OnTouchListener接口的类,重写其 onTouch方法,在 onTouch方法中将点击事件交给更丰富的手势识特器处理,可以直接调用手势识别器的onTouchEvent方法,方式:gestureDetector.onTouchEvent(motionEvent),该方法自动调用手势识别器中设置的SimpleOnGestureListener等侦听器的各回调方法
问题7:无论在哪一级处理,处理后要返回TRUE,表示不再向下传递。返回FALSE,表示继续向下传递

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java的事件处理机制是通过事件分发和事件监听器来实现的。事件分发是指将事件传递给相应的处理对象,而事件监听器则是用于接收和处理事件的对象。 在Java中,事件分发的对象通常是指用户界面组件,例如按钮、文本框等。当用户与界面组件进行交互时,会产生相应的事件,例如点击事件、鼠标移动事件等。这些事件的相关细节会被封装成事件对象。 事件分发的本质是将事件传递到某个具体的处理对象,这个过程通常是从顶层容器开始,逐级向下传递,直到找到能够处理该事件的对象为止。在Android中,事件的传递顺序通常是从Activity开始,然后传递给ViewGroup,最后传递给具体的View。 事件分发过程涉及到几个核心方法,包括dispatchTouchEvent、onInterceptTouchEvent和onTouchEvent。其中,dispatchTouchEvent方法用于分发事件,onInterceptTouchEvent方法用于拦截事件,onTouchEvent方法用于处理事件。 在Java中,可以通过设置事件监听器来监听和处理事件。常见的事件监听器包括OnClickListener、OnTouchListener等。通过设置相应的监听器,可以在事件发生时执行相应的操作,例如点击按钮时执行某个方法。 总结起来,Java的事件处理机制通过事件分发和事件监听器来实现。事件分发将事件传递给相应的处理对象,而事件监听器则用于接收和处理事件。这种机制可以实现用户界面的交互和响应。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值