iphone - UIView 控件在动画完成之前不绘制

标签 iphone ios xcode animation uiview

我有一个相当简单的应用程序,其中包含两个 UIViewController。一个是主视图,第二个是选项页面。当我从一个动画到另一个动画时,UISwitch 和其他控件在旋转完成之前不会完全绘制。如果我不使用动画,那么就没有问题 - 一切都正确显示。这是代码:

[UIView beginAnimations:@"View Flip" context:nil];
[UIView setAnimationDuration:1.0];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];

if (self.optionsViewController.view.superview == nil)
{
    if (self.optionsViewController == nil)
    {
        self.optionsViewController = [[OptionsViewController alloc] initWithNibName:nil bundle:nil];
    }
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.view cache:YES];

    [self.view insertSubview:self.optionsViewController.view atIndex:127];
}

[UIView commitAnimations];

最佳答案

您是否尝试过将缓存设置为“否”?缓存将 View 保存为光栅化形式,这可能发生在 OptionsViewController 的 subview 的绘制过程中。

您还应该考虑在 iOS5 中使用更新更好的动画方法。

+ (void)transitionFromView:(UIView *)fromView toView:(UIView *)toView duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options completion:(void (^)(BOOL finished))completion

关于iphone - UIView 控件在动画完成之前不绘制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10457919/

相关文章:

iphone - 带有动画和 View 管理的 removeFromSuperview

iPhone网络游戏编程

ios - 如何在 App 项目中使用 Cocoa Touch Frameworks

ios - 为什么 Dispatch_group_notify 在不同的环境下工作不同?

iPhone 通过蓝牙连接到 RS-232

ios - 约束更新时委托(delegate)

ios - 更新具有特定索引的元组数组

ios - 为什么我的临时配置文件会过期?

ios - Xcode 仪器 : Leaks - App crashes on launch

ios - 调整图像背景 iOS