2012-06-21 104 views
1

我有兩個ImageView S,iv1iv2,其中iv2重疊的iv120dp。現在製作查看響應點擊事件

,如果我在iv1是可見的區域挖掘準確,它響應事件,但如果我設置iv2的能見度GONEINVISIBLE,也使這setEnabled(false),我可以完全看到iv1,但仍然只其部分區域(在iv2之後可見)響應輕擊事件。

如何使完整的ImageView在點擊重疊視圖時被點擊或隱藏?

+0

你確定你已經將imageview設置爲「不在」了,而不是「不可見」? – Christine

+0

@Christine:我其實都是一對一地嘗試過,但都沒有工作。 – Kushal

回答

3

發生這種情況是因爲iv2在iv1之前。嘗試撥打iv1.bringToFront();。這會將iv1放置在iv2的前方,並且它的整個區域都會變成輕拍響應。

如果後來您想要更改iv2的可見性,則必須撥打iv2.bringToFront();才能將iv2設置爲隱藏之前的狀態。

如果您想將iv1從一開始放置在iv2的前面,則必須在iv2之後將其定義放入xml文件中。視圖將按照它們在佈局xml文件中出現的順序繪製。所以第一種觀點在底部,最後一個在頂部。

+0

你可以擴展爲什麼他應該使用這個功能,它做什麼?這是一個學習網站,答案需要更多解釋。 – JPM

+0

改進回答編輯 – vasart

+0

不錯,我會+1它然後 – JPM