两个view重叠时如何只让上层view响应触摸事件
2012-08-26 19:01
3059 查看
两个view重叠堆放,view1在上,view2在下,view2中有list控件,view1中有几个按钮
由于view1中的按钮设置了点击响应函数,等于消费了在按钮区域的点击,底下view2的list控件不会再响应点击事件了
在view1的非按钮区域点击,由于没有消费点击事件,点击事件会继续传到底下的view2(事件是先传到他们的父view,也就是包含他们的layout,父view遍历所有的子view传递事件),如果点击区域在view2的list控件范围,list设置了点击响应函数,则list控件会响应事件
如果需要view2任何区域都接收不到事件,应该设置整个view1的响应回调函数,以消费任何区域的点击事件:
view1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//不需要任何操作,只是为了消费事件
}
});
由于view1中的按钮设置了点击响应函数,等于消费了在按钮区域的点击,底下view2的list控件不会再响应点击事件了
在view1的非按钮区域点击,由于没有消费点击事件,点击事件会继续传到底下的view2(事件是先传到他们的父view,也就是包含他们的layout,父view遍历所有的子view传递事件),如果点击区域在view2的list控件范围,list设置了点击响应函数,则list控件会响应事件
如果需要view2任何区域都接收不到事件,应该设置整个view1的响应回调函数,以消费任何区域的点击事件:
view1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//不需要任何操作,只是为了消费事件
}
});
相关文章推荐
- 两个view重叠时如何只让上层view响应触摸事件
- Android 布局文件中出现两个framelayout布局重叠,如何让下层不响应事件
- 两个相同大小的Scrollview叠加,如何点击上层scrollview的空白区域时可以让下层的scrollview的点击事件响应
- 两个view重叠如何只让顶层的view相应事件
- 一个view如何同时响应onTouch和onClick事件
- UIScrollView 响应触摸事件的机制
- 两个堆叠fragment,上层fragment响应于降低fragment的button点击事件补救措施
- android framelayout两布局重叠,如何让下层不响应事件
- ios 中UIScrollView如何同时响应scrollViewDidScroll 与 touchesMoved等事件
- 成长小计-控制器中有UIScrollView控件时,无法响应触摸事件
- android 两布局重叠,如何让下层不响应事件
- Android 中如何才能让 StackView 的 OnItemSelectedListener 侦听器响应选中事件
- 如何让UIScrollView里面的UIImageView响应touch事件
- 让UIScrollView上的subView响应触摸事件
- 让UIScrollView的子view响应触摸事件
- 关于两个可移动ViewGroup触摸事件冲突处理
- 如何屏蔽父view的touch事件到,并且响应self的touch
- 让UIScrollView的子view响应触摸事件
- UITouch和TableView如何响应点击事件
- 如何让触摸事件穿透一个View