2010-12-08 14 views
0

對於一個新的Android項目,我需要在聚焦或按下時「閃亮」的按鈕,這意味着更大的圖像應顯示在第一張圖像的頂部。我的問題在於:可點擊區域不應該與此疊加圖像一樣大。Android:聚焦時創建一個不可點擊的超大疊加圖片按鈕?

在ASCII藝術:

+------------------------------------------+ 
|           | 
|           | 
|   +---------------------+   | 
|   | Inner image, always |   | 
|   | visible & clickable |   | 
|   +---------------------+   | 
| Overlay (image with alpha on top)  | 
| visible on focus or press, NOT clickable | 
+------------------------------------------+ 

所以基本上可以覆蓋圖像下的其他項目應該仍是完全訪問,例如通過點擊&拖動。

你知道我可以在Android中解決這個問題嗎? XML佈局解決方案將是最好的!這裏有什麼最佳實踐?

回答

1

你知道我可以在Android中解決這個問題嗎?

從Z軸觀點來看最上面的東西就是輸入事件。因此,您的選擇似乎是:

  1. 創建的View立即子,你自己做的一切,與ImageButton(或不管它是你使用的是現在)配藥。

  2. 嘗試創建複合定製View並將相關輸入事件委託給下面的小部件,這可能或不可能。

  3. 找到一種達到可接受外觀的方式,並不意味着在按鈕頂部有某些東西。

我假設的「按鈕」你的意思是一個ImageButton,你已經更換了背景,將自己的StateListDrawable - 否則,沒有什麼你寫到這裏做多大意義了我。

如果是這樣,則不需要覆蓋。你可以通過... ummmm ...襯底。根據按鈕狀態,使襯墊(單獨的ImageView)可見或不可見。使ImageView的臉部和背景看起來像「閃亮」,作爲您的StateListDrawables的一部分。

+0

@mreichelt:你也可以考慮看看更像這樣:http://blog.tomgibara.com/post/2149115454/dynamic-android-texture – CommonsWare 2010-12-09 02:08:45

相關問題