【问题标题】:Gesture recognizer on button按钮上的手势识别器
【发布时间】:2011-05-26 08:05:26
【问题描述】:

我想为按钮实现一个手势识别器(滑动操作)。问题是,按钮是以编程方式创建的,并且基于一些条件存在或不存在。所以,我不知道是否有按钮,或者有多少。

我知道我需要类似的东西:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
    if (touch.view == aButtonView) {
        //get the button's tag
    }
}

当然,当按下任何按钮视图时,if 语句应该返回 Yes...

有人知道aButtonView 应该是什么词吗?或者如果它甚至可能?提前致谢。

【问题讨论】:

    标签: iphone objective-c xcode uigesturerecognizer gesture-recognition


    【解决方案1】:

    您应该考虑使用UISwipeGestureRecognizer 实例。将手势识别器附加到按钮对象 -

    UISwipeGestureRecognizer *swipe = [[UISwipeGestureRecognizer alloc] initWithTarget:self
                                                                                action:@selector(handleSwipe:)];
    swipe.direction = UISwipeGestureRecognizerDirectionUp;
    [button addGestureRecognizer:swipe];
    [swipe release];
    

    handleSwipe:

    - (void) handleSwipe:(UISwipeGestureRecognizer *)swipe {
        NSInteger tag = swipe.view.tag;
    }
    


    应该是if ( [gestureRecognizer.view isKindOfClass:[UIButton class]] ) {

    【讨论】:

    • 哇,天,这就是我如此喜欢的原因
    • @Deepak:嗯,虽然一开始看起来不错,但似乎不起作用。它永远不会在您描述的语句上返回 YES,即使按钮的操作在释放按钮(触摸)后执行。有什么想法吗?
    • 你将手势识别器附加到什么上?
    • 我有一个视图控制器,包含一个表格视图。在表格视图的单元格中是按钮。我需要识别该按钮上的滑动。按钮添加在与手势识别器所在的同一类(视图控制器、表格视图的委托)中。所以我已经将手势识别器添加到视图控制器中。对吗?
    • 滑动是否有特定的方向?
    猜你喜欢
    • 2011-06-17
    • 1970-01-01
    • 2013-08-28
    • 1970-01-01
    • 1970-01-01
    • 2017-07-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多