2013-06-28 64 views
0

給定一個具有多個視圖的活動,是否有一種方法可以在一個視圖保持其原始狀態(不變暗)時使背景變暗?圍繞視圖調暗背景

我有一個現有的視圖佈局,我在現有佈局上添加了一個暗淡的框架佈局,並希望保留現有視圖中的一個子視圖在其狀態中「變亮」,而暗淡的框架佈局視圖包含周圍。

+0

我會讓FrameLayout自定義一個框架佈局,您可以提供視圖的邊界以保持可見,並且只需將調光剪輯爲這些邊界的反轉。 – kcoppock

回答

2

我知道如何做到這一點的方式對於您的特定用例來說不會很優雅。但如果你沒有找到更好的解決方案,我會解釋它。

將您的整個佈局包裹在一個RelativeLayout中,然後在其上添加一個帶有fill_parent參數的LinearLayout和一個部分透明的黑色背景。調整alpha和RGB以適應您的視覺。

現在,您可以將調光視圖添加到RelativeLayout中。由於您不再位於FrameLayout容器內,因此您必須調整此佈局的位置,並手動移除並重新添加這兩個視圖以進行調光和調整,因此這不是一個非常優雅的解決方案。

+0

感謝您分享您的解決方案,我會嘗試一下。 – Ryan