表示上の透過
方法1 alphaを0にする
view.alpha = 0;
これで透明になりますが、これではviewの上にのせた他のSubviewたちも表示されません。
方法2 背景色をクリアにする
view.backgroundcolor = [UIColor clearColor];
これで背景のみが透過されます。
イベントの透過
方法1 isUserInteractionEnabledを設定する
view. isUserInteractionEnabled = NO;
これでview に対してのイベントが透過されますが、subviewについても反応しなくなります。
方法2 hitTestをオーバーライド
こんな感じ
- (UIView*)hitTest:(CGPoint)point withEvent:(UIEvent *)event { UIView* view= [super hitTest:point withEvent:event]; if(view==self){ return nil; } return view; }
hitTestでnilを返すと後ろのviewへイベントが透過されます。
これを使うと、状況によってイベントの発生状況をコントロールする事が可能となります。