2012-06-05 59 views

回答

41

這將改變只有根視圖的alpha,而不是別人

self.view.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.5]; 
+0

thats awesomw dude .. –

+0

確實很棒。這應該是在谷歌搜索的頂部。認真 – Katushai

+0

謝謝你,真棒! –

2

你需要改變你的看法結構。不要將您的子視圖放在根視圖上,而要在根視圖上創建一個ontop層,但仍然將子視圖添加到根。更改圖層的alpha時,不會影響子視圖。下面的示例結構。

您當前的結構:

RootView->Subviews //Changing RootView alpha effects Subviews. 

所需結構:

RootView->View->Subviews(Still Added to RootView) //Changing alpha of Layer doesn't effect subviews. 

希望這有助於。

+0

不錯,但完全不適合我的問題。我有一個根視圖。我想添加一個視圖像alert view到根視圖。當我將子視圖添加到根視圖時,根視圖應該看起來像透明,並且元素不應該在該視圖中訪問。我想要啓用與子視圖的交互。 –

+0

@skram:按照層次,你是否意味着另一種觀點? – user523234

+1

是的,對不起。我會重新對它進行說明。作爲根和子視圖之間的層的「UIView」。 – skram

9

大廈由@shabbirv答案,還可以使用IB的顏色選擇器

color picker

1

這也將通過以下方式改變根視圖色彩解決這個問題,這會不會影響到子視圖。

[rootView setBackgroundColor:[[UIColor blackColor] colorWithAlphaComponent:0.7]];