Android 在重叠视图后面创建视图以响应点击事件

Android 在重叠视图后面创建视图以响应点击事件,android,events,android-view,Android,Events,Android View,我有两个ImageViews、iv1和iv2,其中iv2与20dp重叠在iv1上 现在,如果我准确地点击iv1可见的区域,它会响应事件,但如果我将iv2的可见性设置为GONE或INVISIBLE,并将其设置为setEnabled(false),我可以完全看到iv1,但仍然只能看到其部分区域(在iv2后面可见)响应tap事件 如果重叠视图被禁用或不可见,如何使complete ImageView成为点击响应视图?发生这种情况是因为iv2位于iv1前面。尝试调用iv1.bringToFront();

我有两个
ImageView
s、
iv1
iv2
,其中
iv2
20dp
重叠在
iv1

现在,如果我准确地点击
iv1
可见的区域,它会响应事件,但如果我将
iv2
的可见性设置为
GONE
INVISIBLE
,并将其设置为
setEnabled(false)
,我可以完全看到
iv1
,但仍然只能看到其部分区域(在
iv2
后面可见)响应tap事件


如果重叠视图被禁用或不可见,如何使complete ImageView成为点击响应视图?

发生这种情况是因为iv2位于iv1前面。尝试调用
iv1.bringToFront();
。这将使iv1位于iv2前面,其整个区域成为点击响应

如果以后要更改iv2的可见性,则必须调用
iv2.bringToFront();
,使其与设置iv2之前一样不可见


如果要从一开始就将iv1放在iv2前面,则必须将其定义放在iv2之后的xml文件中。视图将按照其在布局xml文件中的外观顺序绘制。因此,第一个视图位于底部,最后一个位于顶部。

您确定已将imageview设置为“gone”,而不是“invisible”吗?@Christine:我实际上一个接一个地尝试了这两种方法,但都没有效果。你能详细说明他为什么要使用这个功能以及它的作用吗?这是一个学习网站,答案需要更多的解释。