Android:如何防止任何触摸事件从一个视图传递到它下面的视图?

特别是使用下面的代码,是否有办法修改它,使新创建的视图下的活动不会收到任何手势

视图v1=新视图(此);
WindowManager.LayoutParams params=新建WindowManager.LayoutParams(
1000,
50,
WindowManager.LayoutParams.TYPE\系统\警报,
WindowManager.LayoutParams.FLAG\u不可聚焦|
WindowManager.LayoutParams.FLAG_布局在屏幕中,
像素格式(不透明);
params.gravity=gravity.BOTTOM;
WindowManager wm=(WindowManager)this.getSystemService(Context.WINDOW\u服务);
wm.addView(v1,params);

onTouchEvent方法添加到具有top position的视图中,然后返回true。True将告诉冒泡事件该事件已被使用,因此防止事件冒泡到其他视图

受保护的布尔onTouchEvent(MotionEvent me){
返回true;
}

对于v1您将执行导入:

导入android.view.view.OnTouchListener;

然后设置onTouchListener:

v1.setOnTouchListener(新的OnTouchListener(){
@凌驾
公共布尔onTouch(视图v,运动事件){
返回true;
}
});

发表评论