为了账号安全,请及时绑定邮箱和手机立即绑定

请问能将UIGestureRecognizer附加到多个视图吗?

请问能将UIGestureRecognizer附加到多个视图吗?

隔江千里 2019-11-05 09:04:32
您能将UIGestureRecognizer附加到多个视图吗?UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget: self action:@selector(tapTapTap:)];[self.view1 addGestureRecognizer:tapGesture]; [self.view2 addGestureRecognizer:tapGesture];[tapGesture release];在上面的代码中,只点击view2都被认可了。如果我注释掉第三行,然后点击view1都被认可了。如果我是对的,而且您只能使用手势识别器一次,我不确定这是否是一个错误,或者它只是需要更多的文档。
查看完整描述

3 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

UIGestureRecognizer将与单一视图一起使用。我同意文件不完整。那,那个UIGestureRecognizer有一个view财产赠予他人:

视点

将手势识别器附加到的视图。(只读)

@properties(非原子,只读)UIView*视图

讨论使用addGestureRecognizer:方法向UIView对象附加(或添加)手势识别器。



查看完整回答
反对 回复 2019-11-06
?
UYOU

TA贡献1878条经验 获得超4个赞

我用下面的方法绕过了它。

for (UIButton *aButton in myButtons) {

            UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] 
            initWithTarget:self action:@selector(handleLongPress:)];
            longPress.minimumPressDuration=1.0;
            [aButton addGestureRecognizer:longPress];
            [longPress release];}

然后,在handleLongPress方法中,我只设置了一个UIButton,它等于手势识别器的视图,并根据该按钮将所做的事情分支

- (void)handleLongPress:(UILongPressGestureRecognizer*)gesture {
    if ( gesture.state == UIGestureRecognizerStateEnded ) {
        UIButton *whichButton=(UIButton *)[gesture view];
        selectedButton=(UIButton *)[gesture view];
    ....}



查看完整回答
反对 回复 2019-11-06
?
莫回无

TA贡献1865条经验 获得超7个赞

对于SWIFT 3,如果有人需要的话:基于以上Bhavik Rathod的答案。

 func setGestureRecognizer() -> UIPanGestureRecognizer {

        var panRecognizer = UIPanGestureRecognizer()

        panRecognizer = UIPanGestureRecognizer (target: self, action: #selector(pan(panGesture:)))
        panRecognizer.minimumNumberOfTouches = 1
        panRecognizer.maximumNumberOfTouches = 1
        return panRecognizer    }

        ///set the recognize in multiple views
        view1.addGestureRecognizer(setGestureRecognizer())
        view2.addGestureRecognizer(setGestureRecognizer())



查看完整回答
反对 回复 2019-11-06
  • 3 回答
  • 0 关注
  • 661 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信