Android事件传递机制(一)deprecated
发布日期:2021-06-30 11:23:11 浏览次数:2 分类:技术文章

本文共 1840 字,大约阅读时间需要 6 分钟。

main.xml如下:

MainActivity如下:

package com.cn;import android.app.Activity;import android.os.Bundle;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;/** * Demo描述: * 测试Touch事件的传递,代码结构如下: * 1 定义一个Button 重写onTouchEvent()方法 * 2 在Activity中为该Button设置OnTouchListener * 3 重写Activity的onTouchEvent() * 注意: * 在以上的三步的结尾处均返回false,表示未处理完事件继续传播 *  * 运行测试结果,输出的顺序为: * 1 EventButton OnTouchListener in MainActivity * 2 EventButton onTouchEvent * 3 MainActivity onTouchEvent *  * 即Touch事件的处理顺序为: * 1 自定义button的listener * 2 自定义button的onTouchEvent()方法 * 3 Activity的onTouchEvent() * 所以,按照这个处理顺序只要在对于的方法结尾处返回true. * 那么对于该事件的处理就不会继续传递下去. *  */public class MainActivity extends Activity {	private EventButton mEventButton;	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.main);		init();	}   private void init(){	   mEventButton=(EventButton) findViewById(R.id.button);	   mEventButton.setOnTouchListener(new OnTouchListener() {		@Override		public boolean onTouch(View v, MotionEvent event) {			System.out.println("---> EventButton OnTouchListener in MainActivity ");			return false;		}	});	      }    @Override    public boolean onTouchEvent(MotionEvent event) {    	super.onTouchEvent(event);    	System.out.println("---> MainActivity onTouchEvent");    	return false;    }        }

EventButton如下:

package com.cn;import android.content.Context;import android.util.AttributeSet;import android.view.MotionEvent;import android.widget.Button;public class EventButton extends Button {	public EventButton(Context context, AttributeSet attrs) {		super(context, attrs);	}		@Override	public boolean onTouchEvent(MotionEvent event) {		super.onTouchEvent(event);		System.out.println("---> EventButton onTouchEvent");		return false;	}   	}

 

转载地址:https://it9527.blog.csdn.net/article/details/8921438 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Android事件传递机制(笔记)deprecated
下一篇:Android事件传递机制(二)deprecated

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月25日 15时30分20秒