UINavigationController取消对以前的UIView的更改

时间:2013-04-11 08:58:53

标签: iphone cocoa-touch

我有一个导航控制器,里面有几个视图控制器。在第一个视图控制器(应用程序的初始控制器)中,我执行一个动画,它移动两个UIImageViews,并淡化一些额外的UI元素。现在,当我按下下一个视图控制器然后返回到初始视图控制器时,转换消失了,图像视图正好是从故事板加载时的位置。但是,附加的ui元素仍然可见,我在一些UITextField中输入的文本也是如此。因此,视图控制器并未完全重置为其初始状态,但某种程度上已执行的动画已撤消。任何人都可以告诉我这是否是常规行为 - 如果是 - 我怎样才能保留变换?

更多披露:我只是在按下按钮时启动常规动画......

[UIView animateWithDuration:0.4
                      delay:0.0
                    options:UIViewAnimationOptionCurveEaseInOut
                 animations:^{

                     self.firstView.center = firstCenter;
                     self.secondView.center = secondCenter;
                 }
                 completion:^(BOOL finished) {

                     // Upon complection fade in additional ui elements
                     [UIView animateWithDuration:0.4
                                      animations:^{

                                          self.firstElement.alpha = 1.0;
                                          self.secondElement.alpha = 1.0;
                                          self.thirdElement.alpha = 1.0;
                                      }
                                      completion:^(BOOL finished) {

                                          [self.activityIndicator stopAnimating];
                                      }];
                 }];

...然后按下另一个按钮后按下一个视图控制器。

[self.navigationController pushViewController:_nextViewController animated:YES];

据我所见,我在这里没有做任何时髦的事情,所以感谢任何帮助。

0 个答案:

没有答案