我有主視圖,我添加了子視圖。我將子視圖的背景設置爲半透明,但子視圖以純色繪製。我甚至嘗試將不透明設置爲NO。iPhone子視圖可以透明嗎?
detailsView.opaque = NO;
detailsView.backgroundColor = UIColorMakeRGBA(0, 0, 100, 100);
我可以讓vsubview是通過alpha屬性透明(但子視圖所有的東西也將是透明的),但我真的想只是設置背景色爲半透明。
我有主視圖,我添加了子視圖。我將子視圖的背景設置爲半透明,但子視圖以純色繪製。我甚至嘗試將不透明設置爲NO。iPhone子視圖可以透明嗎?
detailsView.opaque = NO;
detailsView.backgroundColor = UIColorMakeRGBA(0, 0, 100, 100);
我可以讓vsubview是通過alpha屬性透明(但子視圖所有的東西也將是透明的),但我真的想只是設置背景色爲半透明。
設置alpha
到所需的值在colorWithRed:green:blue:alpha method
detailsView.backgroundColor = [UIColor colorWithRed:0/255.0f
green:30/255.0f
blue:160/255.0f
alpha:0.5f];
我不知道UIColorMakeRGBA
功能,但它看起來像你對我創建的是一個藍色與1α,所以它不應該是透明。嘗試設置背景顏色線是
detailsView.backgroundColor = UIColorMakeRGBA(0, 0, 100, 50);
或者只是使用[[UIColor blueColor] colorWithAlphaComponent:0.5f];
我認爲UIColorMakeRGBA
是,你已經實現的功能。在這種情況下,我相信,它看起來像這樣:
#define UIColorMakeRGBA(redValue, greenValue, blueValue, alphaValue) [UIColor colorWithRed:(redValue)/255.0f green:(greenValue)/255.0f blue:(blueValue)/255.0f alpha:(alphaValue)]
注意,阿爾法沒有被255.0
分,所以你應該0.0
和1.0
爲參數,而不是100
之間使用的值。如果你使用100,你將會得到一個alpha值等於1.0
的顏色。
detailsView.backgroundColor = UIColorMakeRGBA(0, 0, 100, 0.5f);
UIColorMakeRGBA是你定義的函數嗎?如果是的話,你可以發佈其代碼或確認它看起來像我的答案中的代碼? – sch 2012-03-12 16:02:28
是的,它是用戶定義的功能,你不是我......問題是我認爲阿爾法也是由255分開。 – MegaManX 2012-03-12 16:12:12