ios - Storyboard 里面如何根据条件显示最初的ViewController
PHP中文网
PHP中文网 2017-04-17 13:23:31
[iOS讨论组]

如题,比如说,应用在第一次打开的时候展示介绍界面。或者在用户没用登陆的情况下, 打开app就显示登录界面。而一般情况下,打开app显示的是主界面。

如何在storyboard里面进行设置啊????

有经验的前辈求指教

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(2)
大家讲道理

请查看UIStoryboard这个类的文档,有接口实例化UIStoryboard中任何一个ViewController类,但是要在ViewController的属性中设置名称或者Storyboard ID才能用那个接口。
如果是在application:didFinishLaunchingWithOptions:方法中判断条件的话,就是把AppDelegate的window的rootViewController设置为你按条件实例化的那个实例。
最后,记得在返回YES之前调用[self.window makeKeyAndVisible];

给你一段相对比较全面的参考代码:

UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"Main_iPad" bundle:nil];
if (userId) {
    MyViewController *firstController = [storyBoard instantiateViewControllerWithIdentifier:@"FirstLoadingController"];
    self.window.rootViewController = firstController;
} else {
    MyViewController *firstController = [storyBoard instantiateViewControllerWithIdentifier:@"IntroductionViewController"];
    self.window.rootViewController = firstController;
}
[self.window makeKeyAndVisible];

PS: 其实还可以采用另一个方案:在检查到用户未登录的时候马上以Modal的方式加入登录的view,让用户先
完成登录操作。

ringa_lee

当你打开Storyboard你看到的第一个箭头指的view就是你打开app时首先看到的view,你想要哪个界面第一个显示就把那个箭头拖到哪里。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号