1

在运行我的应用程序时,按钮的行为很奇怪。他们只在滑动时做出反应,而不是点击。单击时它们确实会变蓝,但不会发生任何操作,如果我滑动它们,它们会按应有的方式进行操作。在模拟器上,一切都按点击预测的那样工作。我还没有实现任何滑动按钮等的方法。可能是什么问题?

更新 :

 forControlEvents:UIControlEventTouchUpInside];
[save addTarget:self action:@selector(saveInfo)


forControlEvents:UIControlEventTouchUpInside];
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]
                               initWithTarget:self
                               action:@selector(dismissKeyboard)];
[TableControll.view addGestureRecognizer:tap];


-(void)dismissKeyboard {
    [[_textFields objectAtIndex:0] resignFirstResponder];
    [[_textFields objectAtIndex:1] resignFirstResponder];
    [[_textFields objectAtIndex:2] resignFirstResponder];
    [[_textFields objectAtIndex:3] resignFirstResponder];
}

如果没有关闭键盘,按钮可以正常工作,那么我应该如何让它们一起工作而不会出现问题?

4

2 回答 2

1
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer 
       shouldReceiveTouch:(UITouch *)touch {

    if ([touch.view isKindOfClass:[UIButton class]]) {
        return NO;
    }
    return YES;
}

使用此方法区分点击事件和按钮事件...

于 2012-11-05T09:59:12.103 回答
0

我有一个类似的问题,这是我的解决方案:

tapRecognizer.cancelsTouchesInView = false
于 2015-05-13T14:33:40.137 回答