我正在尝试在视图控制器之间做自定义动画,在下面的例子中,我正在模仿 UINavigationController 的 popViewController。但是,它似乎在 iPhone,尤其是 iPad 上滞后很多,Time Profiler 证实它说所有滞后都来自 addSubview 行。
无论如何,我通过 Interface Builder 连接 nlView 并使用以下代码:
[self.view.superview addSubview:nlView.view];
[nlView.view setFrame:CGRectMake(-kWidth, 20, kWidth, kHeight-20)];
[UIView animateWithDuration:2
animations:^{
[nlView.view setFrame:CGRectMake(0, 20, kWidth, kHeight-20)];
[self.view setFrame:CGRectMake(kWidth, 20, kWidth, kHeight-20)];
}
completion:^(BOOL finished){
[self.view removeFromSuperview];
}];
那么,我怎样才能将这种滞后降到最低呢?没有泄漏或类似的东西,但我怎么能改变我的逻辑,以便在改变视图时没有滞后?
谢谢!