我最近遇到了一个视图控制器的麻烦,它里面有一个 UIWebView 和一个我想添加到视图控制器的子视图。
这就是 UIWebView 的视图: http: //cl.ly/image/03473l0e3a2L
我的目标是,添加一个可以正常工作的共享菜单:http: //cl.ly/image/3b273t2o3P00
但是现在我遇到了问题,我为社交图标+标签(twitter、facebook、mail)设置了手势识别器——但是这些手势识别器什么也没做。
ShareView 是 UIView 子类,我以这种方式添加手势识别器:
UITapGestureRecognizer *fbTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(fbTapped:)];
fbTap.numberOfTapsRequired = 1;
fbTap.numberOfTouchesRequired = 1;
fbTap.delegate = self;
[fbImage addGestureRecognizer:fbTap];
[fbLabel addGestureRecognizer:fbTap];
UITapGestureRecognizer *twTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(twTapped:)];
twTap.numberOfTapsRequired = 1;
twTap.numberOfTouchesRequired = 1;
twTap.delegate = self;
[twImage addGestureRecognizer:twTap];
[twLabel addGestureRecognizer:twTap];
UITapGestureRecognizer *mailTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(mailTapped:)];
mailTap.numberOfTapsRequired = 1;
mailTap.numberOfTouchesRequired = 1;
mailTap.delegate = self;
[mailImage addGestureRecognizer:mailTap];
[mailLabel addGestureRecognizer:mailTap];
我认为 Label 和 UIImageView 名称确实可以解释自己。每个 Label 和 ImageView 都将 userInteractionEnabled 设置为 YES。ShareView 也为 Userinteractions 启用,我确实将 UIGestureRecognizerDelegate 设置为它。
fbTapped、mailTapped 和 twTapped 函数确实会向主视图(其中包含 webview 和 ShareView 的视图)发送通知。
但是现在当我点击标签或图像视图时,什么也没有发生。
我确实在 stackoverflow 上读到 MainView 中的 UIWebView 可能会中断识别?但我不知道如何解决这个问题。
如果你能帮助我或指出我解决这个问题的正确方向,我会非常高兴。