以下のようにbackgroundcolorにUIColorをセットするとできるらしい。
複雑なレイアウトを実現するときに使えるかも。
UIView *oya = [[UIView alloc] init]; oya.backgroundcolor = [UIColor colorWithRed:0.0f green:0.0f blue:0.0f alpha:0.5f]; UIView *ko = [[UIView alloc] init]; ko.backgroundcolor = [UIColor colorWithRed:0.0f green:0.0f blue:0.0f alpha:1.0f]; [oya addSubview:ko]; //子の透明度は1.0fになる
参考:UIViewの親と子で別々のalpha値をもたせる方法 - Buddha-Over-Flow
と、思ったけどやっぱりこれ使えない。
設定できるのが背景色の透明度だけだから、subviewの透明度は変わらないしラベルの文字列とかも透明に出来ない。
親子で別々の透明度を設定したかったら↓のサイトで紹介されているように、別々の透明度を設定したいViewが親子でなくなるようにView階層をいじるしかないっぽい。
uiview - iPhone Programming: Applying Alpha to Parent but not to Child Views - Stack Overflow