加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xcode – popViewControllerAnimated:自定义过渡动画?

发布时间:2020-12-15 01:48:11 所属栏目:百科 来源:网络整理
导读:是的,我已经找到了答案.除了没有提供淡入淡出过渡选项,只有翻转或卷曲的解决方案之外,所有解决方案都不起作用. 喜欢这个: methodname configure animation [self.navigationController popViewControllerAnimated:NO]; 无论我尝试什么样的过渡动画配置,没有
是的,我已经找到了答案.除了没有提供淡入淡出过渡选项,只有翻转或卷曲的解决方案之外,所有解决方案都不起作用.

喜欢这个:

methodname
    configure animation
    [self.navigationController popViewControllerAnimated:NO];

无论我尝试什么样的过渡动画配置,没有什么明显不同于仅使用典型的单行弹出.如果我将其更改为…动画:是];,我得到标准的流行动画,也许是从破坏的配置中发生了一些奇怪的事情.

所以我的问题是:如果不是CrossDissolve,我怎么能用pop,然后至少看起来相同的东西?甚至可以使用导航控制器吗?

使用模态视图将具有我想要的默认动画,并且我可以轻松地管理视图堆栈,但我不想这样做.

解决方法

对于这种类型的转换,我真的建议使用模态视图控制器,这就是系统的设计方式.

但是如果你坚持使用导航控制器有一种方法,虽然有些难看.

[CATransaction begin];
[CATransaction setValue:(id)kCFBooleanTrue forKey:kCATransactionDisableActions];

CATransition *transition = [CATransition animation];
[transition setType:kCATransitionFade];
[self.navigationController.view.layer addAnimation:transition forKey:@"someAnimation"];

[self.navigationController popViewControllerAnimated:YES];
[CATransaction commit];

CATransaction将禁用所有标准动画.当交换视图时,CATransition会向导航控制器层添加淡入淡出过渡(在这种情况下,删除弹出的viewcontroller视图).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读