0

我有这个代码:

- (void)touchesBegan:(NSSet*)touches withEvent:(UIEvent*)event
{
    MainGame *newview = [[MainGame alloc] initWithNibName:@"MainGame" bundle:nil];
    newview.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
    [self presentModalViewController:newview animated:YES];
}

当我触摸屏幕时,它用于切换到名为 MainGame 的视图,但有时当我触摸屏幕时没有任何反应。

我想说的是,我的 touchesBegan 只是有时会收到触摸,其他时候会被忽略。

除了这段代码,我还运行了大约 1 - 4 个 UIView 动画,它们由以下人员设置:

[UIView animateWithDuration: ... ];

但是,如果我删除动画,它将始终识别 touchesBegan。

那么为什么我的动画会阻止 touchesBegan 被识别,我该如何阻止这种情况发生呢?

4

1 回答 1

1

使用 UIView 方法:

animateWithDuration:delay:options:animations:completion:

并将选项设置为:

UIViewAnimationOptionAllowUserInteraction

这应该为你做。

于 2012-09-25T17:34:38.957 回答