ビューとview.UserInteractionenabled = noがあり、ビューにボタンが追加されます。ボタンをクリックするだけです。ボタンのみのインタラクションを有効にすることは可能ですか。
質問する
4449 次
1 に答える
13
ビューとそのオブジェクトまでのすべてのスーパービューに対するものでない限り、ビューuserInteractionEnabled
はタッチを受け取ることができません。YES
UIWindow
ボタンを含む のサブクラスを作成し、UIView
をオーバーライドしてボタンの外側のタッチを無視するようにすることができますhitTest:withEvent:
。例:
@interface MyView : UIView
@property (nonatomic, strong) IBOutlet UIButton *button;
@end
@implementation MyView
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
UIView *subview = [super hitTest:point withEvent:event];
return subview == self.button ? subview : nil;
}
@end
于 2012-11-16T09:57:23.380 に答える