动画期间无法触摸(块动画)

Hel*_*miB 9 iphone core-animation objective-c uiviewanimation

我有一个视图UIButton,UITextField以及UIImageView为背景.

viewDidLoad我尝试UIImageView使用块从alpha = 0到alpha = 1的动画.这是非常基本的,这是代码:

[UIView animateWithDuration:1.5 animations:^(void){

    ((UIView*)[self.view viewWithTag:123]).alpha = 1;
}completion:^(BOOL finished){
}];
Run Code Online (Sandbox Code Playgroud)

这工作正常.但在1.5秒的动画期间,我在当前视图中的触摸似乎被禁用.在动画完成之前,我无法单击任何按钮或textFields.

提前致谢

d.l*_*dev 29

您应该使用选项UIViewAnimationOptionAllowUserInteraction,如以下示例所示:

[UIView animateWithDuration:1.0 
                      delay:0 
                    options:UIViewAnimationOptionAllowUserInteraction 
                 animations:^{ myView.alpha = 0.5; } 
                 completion:NULL];
Run Code Online (Sandbox Code Playgroud)

  • >>不同之处只有延迟和选项. - 请确保您没有将alpha设置为零.使用至少0.1而不是0.0`动画:^ {myView.alpha = 0.1; } (3认同)

Hel*_*miB 0

我最终没有这样做。您无法触摸仍在动画的视图。这就是我的结论。不过,很高兴听到对此的一些想法。