UIImageView无法识别轻击手势

时间:2015-08-17 18:52:17

标签: ios objective-c uiimageview

我已经在SO上搜索过类似于此的其他问题了,并且解决了我的问题。出于某种原因,我的UIImageView(我在故事板中添加到UIView)只是无法识别我创建的点击手势。启用了用户交互,多点触控也是如此。我的选择器方法永远不会被调用。

self.image是我添加到UIView上的imageView属性。

- (void)viewDidLoad {
    [super viewDidLoad];
    self.image.image = [UIImage imageNamed:@"mountainWallpaper.png"];
    [self gesture];
}

-(void)gesture {

    UITapGestureRecognizer *imageTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(imageTapped:)];
    //imageTap.numberOfTapsRequired = 1;
    //imageTap.numberOfTouchesRequired = 1;
    imageTap.delegate = self;

    [self.image addGestureRecognizer:imageTap];

}

-(IBAction3)imageTapped:(UIGestureRecognizer *)tap {
    NSLog(@"test");
}

有什么建议吗?我已经查看了我发现的大多数其他问题并尝试了各种解决方案而没有这样的运气。许多答案都说要验证用户交互是否已启用,以确保委托已设置...我已经尝试了很多已经建议的内容。

我还尝试首先添加UIView作为点击手势目标,将imageView本身添加为目标,将手势添加到UIView和imageView ......没有。

在storyboard中,我将我的UIImageView作为视图和图像连接到我的viewController。我通常以编程方式做事情,所以我不得不习惯在IB中连接对象,我很擅长。

2 个答案:

答案 0 :(得分:1)

检查以下几点可能会对您有所帮助:

  • 确保启用了UIImageView用户交互。
  • 图像视图优先级应该超过超级视图。
  • 确保也启用了Image view userIntration的超级视图。
  • 您是否添加了UI手势代表?

答案 1 :(得分:1)

看起来你有拼写错误。尝试将IBAction3更改为IBAction或void:

import "crypto/rand"

p, _ := rand.Prime(rand.Reader, 3072)