iphone - iOS:一个动画之后,所有其他 View 开始动画

标签 iphone ios animation

我有一个非常特殊的问题。在我开发的 iOS 应用程序中,运行下面的动画后,我发现 UI 的各种其他元素现在只要出现就会有动画效果。

例如,一旦运行下面的这些动画,每次我导航到应用程序中的新选项卡时,所有 UI 元素都会从 iPhone 的左上角动画到正确的位置。我没有为其他选项卡中的这些 UI 元素指定动画,事实上,即使是我无法访问的元素(例如 iPhone 状态栏中的事件指示器)也会开始自行设置动画。

这是怎么回事?为什么只有在执行下面的动画后才会出现这种情况?在运行此动画之前(按下按钮),其他应用程序选项卡中的所有其他 UI 元素在出现时根本不会动画,这是预期的行为。

- (IBAction) btnChosenPostcodeClicked:(id)sender {

  //prep animations
  startView.alpha = 1.0;
  postcodeView.alpha = 0.0;

  [self.view addSubview:postcodeView];

  [UIView beginAnimations:@"ChosenPostcodeAnimation01" context:nil];

  [UIView setAnimationDuration:animationSpeed];
  [UIView setAnimationTransition:UIViewAnimationTransitionNone forView:self.view cache:YES];
  [UIView setAnimationDelegate:self]; 
  [UIView setAnimationDidStopSelector:@selector(chosenPostCodeFadeoutAnimationDone:finished:context:)];

  startView.alpha = 0.0;

  [UIView commitAnimations];

}

- (void)chosenPostCodeFadeoutAnimationDone:(NSString *)animationID finished:(NSNumber *)finished context:(void *)context {
    //prep animations
    postcodeView.alpha = 0.0;

    [UIView beginAnimations:@"ChosenPostcodeAnimation02" context:nil];

    [UIView setAnimationDuration:animationSpeed];
    [UIView setAnimationTransition:UIViewAnimationTransitionNone forView:self.view cache:YES];

    CGRect newRect = CGRectMake(42, 157, 239, 180);
    imvBubble.frame = newRect;

    postcodeView.alpha = 1.0;

}

最佳答案

你缺少一个

[UIView commitAnimations];

在selectedPostCodeFadeoutAnimationDone中,所以你所做的一切绝对都会成为动画的一部分!

关于iphone - iOS:一个动画之后,所有其他 View 开始动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5092991/

相关文章:

iphone - 如何缩小智能手机上平板电脑的网站 build ?

ios - Xcode - 标题为 "no such file or directory"

Android,使动画文本在屏幕上向上滚动,就像星球大战的第一部分

html - CSS/HTML5 形状补间/变形?

iphone - 从右/左动画 presentModalViewController

iphone - 使用 UIGestureRecognizer 沿 x 轴移动 UIImageView

objective-c - 将 UITextField 中的整数值检索到 NSInteger 变量中

iphone - 选择模拟器后,如何在 XCode 中自动启用#define?

iphone - 如何再次请求访问 iphone 通讯录地址簿的权限?

ios - 如何扩展 UITableView?