UINavCtrlr 推送动画将内容部分移开然后消失

Posted

技术标签:

【中文标题】UINavCtrlr 推送动画将内容部分移开然后消失【英文标题】:UINavCtrlr push animation shifts content partway off then dissapears 【发布时间】:2014-04-01 15:14:46 【问题描述】:

我遇到了 UINavigationController 默认转换的问题,其中转换突然且不完整。一张图片值 1000 字,所以下面是过渡的样子:

根视图控制器:

根向左滑动大约 1/4 宽度,而被推送的视图控制器出现在顶部(注意左上角覆盖的“标题”文本)。

动画停止,根控制器突然消失,显示推送的视图控制器。

主要问题是根控制器不会像往常那样滑落。它滑动了大约 1/4,在被推动的控制器内容覆盖时停止,然后突然消失。

这是我在根控制器中转换到新视图控制器的代码: [self.navigationController pushViewController:editAttributeViewController animated:TRUE];

我能想到的唯一复杂因素是,这发生在模态视图控制器 (UIModalPresentationFormSheet) 中(正如您可能知道的那样)。

关于为什么动画无法正常运行的任何想法?

非常感谢!

【问题讨论】:

【参考方案1】:

我可能是错的,如果我错了,请原谅我,但我认为这是一个视觉缺陷,当您没有为新视图控制器设置背景颜色时会发生这种情况。新的视图控制器是透明的,因此动画似乎没有应有的流畅。尝试为您尝试呈现的视图控制器设置背景颜色,看看是否有帮助。

【讨论】:

哇...认真的吗?那正是我的问题!我不敢相信我做到了...非常感谢!一旦时间分配允许,将接受您的回答。 :) 完全没问题!我遇到过几次这个问题..确实很烦人!很高兴我能帮上忙!

以上是关于UINavCtrlr 推送动画将内容部分移开然后消失的主要内容,如果未能解决你的问题,请参考以下文章

需要对图像进行动画处理以在每次鼠标悬停时从光标位置移开?

iOS 8:UINavigationController 弹出没有动画然后推送

CATransition 提前推送过渡替换内容

iOS11 中奇怪的 uitableview 行为。单元格通过导航推送动画向上滚动

推送后视图上的按钮将不起作用,然后呈现一个 UIViewController

推送segue动画不起作用