iOS – 使用动画更改根视图控制器

iOS – 使用动画更改根视图控制器,第1张

概述我正在通过按下一个连接到我想要更改为的视图控制器的自定义segue的按钮来更改根视图控制器.自定义segue看起来像: - (void)perform{ UIViewController *source = (UIViewController *)self.sourceViewController; source.view.window.rootViewController = s 我正在通过按下一个连接到我想要更改为的视图控制器的自定义segue的按钮来更改根视图控制器.自定义segue看起来像:
- (voID)perform{    UIVIEwController *source = (UIVIEwController *)self.sourceVIEwController;    source.vIEw.window.rootVIEwController = self.destinationVIEwController;}

但这只会立即更改根视图控制器.我希望控制器在旧控制器之上淡出.

解决方法 常见的方法是:
UIStoryboard *sb = [UIStoryboard storyboarDWithname:@"YourSBname" bundle:nil];    UIVIEwController *vc = [sb instantiateInitialVIEwController];// Or any VC with ID    DictateITAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];    appDelegate.window.rootVIEwController = vc; // PLEASE READ NOTE ABOUT THIS liNE    [UIVIEw TransitionWithVIEw:appDelegate.window                      duration:INTERVAL_DURATION                       options:UIVIEwAnimationoptionTransitionCrossdissolve                    animations:^{ appDelegate.window.rootVIEwController = vc; }                    completion:nil];

现在有几点说明:

appDelegate.window.rootVIEwController = vc; // PLEASE READ NOTE ABOUT THIS liNE

您实例化的新视图控制器将以默认方向显示,即纵向.因此,如果您在横向中执行此 *** 作,则新视图控制器将显示为纵向,然后转为横向.这条线为我解决了这个问题.

总结

以上是内存溢出为你收集整理的iOS – 使用动画更改根视图控制器全部内容,希望文章能够帮你解决iOS – 使用动画更改根视图控制器所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1109359.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存