需求:背景半透明,子控件不透明
方法:
1.用一張半透明的圖片做背景。
這個(gè)方法當(dāng)然可以達(dá)到要求,但在工程中盡量少加入資源,能不用圖片的盡量不用圖片(如純色背景之類的)
2.使用colorWithWhite:alpha:方法
bgView.backgroundColor = [UIColor colorWithWhite:0.f alpha:0.5];
white后面的參數(shù)表示灰度,從0-1之間表示從黑到白的變化,alpha就是你想調(diào)整的透明度。如果做的半透明背景基色基本非黑即白,這個(gè)方法基本也夠用了。缺點(diǎn)就是不能設(shè)置其他顏色(彩色)的半透明
3.使用colorWithRed:green:blue:alpha:方法?? 擴(kuò)展:colorWithHexColor:alpha:
4. 在xib或者storyBoard里面對背景進(jìn)行設(shè)置
如圖:

xib中的設(shè)置
通過對背景顏色設(shè)置圖中的Opacity滑塊調(diào)整透明度,同樣可以達(dá)到設(shè)置背景半透明而子控件不透明的目的。
5.使用colorWithAlphaComponent:方法
bgView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.5];