- (void)viewDidLoad
{
[super viewDidLoad];
CGRect imageRect = (CGRect){105, 180, 110, 110};
UIImage *image = [UIImage imageNamed: @"sasuke.png"];
UIImageView *imageView = [[UIImageView alloc] initWithFrame:imageRect];
[imageView setImage: image];
UILongPressGestureRecognizer *longGnizer=[[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longGo:)];
imageView.userInteractionEnabled = YES;
[imageView addGestureRecognizer:longGnizer];
[self.view addSubview:imageView];
}
- (void)longGo:(UILongPressGestureRecognizer *)aGer{
if(aGer.state==UIGestureRecognizerStateBegan) {
NSLog(@"%s",__func__);
}
}
这是代码,但是func longGo永远不会工作,为什么?当我使用[self.view addGestureRecognizer:longGnizer]时,它确实有用。
答案 0 :(得分:7)
UIImageView
默认情况下userInteractionEnabled
设置为NO
。您必须设置imageView.userInteractionEnabled = YES;
。