2013-08-18 50 views
0

我在水平滾動視圖內有一組圖像。每個圖像在兩個邊緣上的相鄰圖像上重疊。當我點擊一個特定的圖像時,它應該在兩邊的其他圖像之上。這工作正常使用,Android中佈局中圖像的Z排序問題

tab[id].bringToFront(); 
tabParent.invalidate(); 

在我的佈局,我有一個案件,隱藏整個水平滾動視圖,並把它帶回來。我在這裏遇到問題。當它回來時,圖像的順序被重新排列。

說,我5倍的圖像和電流id = 2。然後順序是這樣

3 | 4 | 5 | 1 | 2 

視圖來自View.GONE模式切換回後。如何使用bringToFront()和invalidate()方法正確處理這種情況?

+0

是你的問題解決了,使用ArrayList的訂單陣列將在下面的答案最好的選擇 – Diljeet

回答

1

你唯一的選擇是bringtofront功能,所以我建議你這種解決方法

使imageviews或另一種觀點是這樣

View[] views=new View[]{anyview,imageview,otherview,linearlayout,imageview2};//add any type of view 

的陣列,現在你也知道,新的順序應該是 3 | 4 | 5 | 1 | 2

的可以讓這個順序的數組或數組列表 假設int[] order=new int[]{3,4,5,1,2}; 然後使用「for」循環

for(int i=0;i<order.length;i++) 
{ 
    views[order[i]].bringToFront(); 
}