我有一个视图和 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 回答