bluetooth99 2013-01-08 01:54 采纳率: 0%
浏览 8181
已采纳

报错:nil modal view controller

得到了如下报错:**Application tried to present a nil modal view controller on target**。我在运行的程序是,首先判断条件是否满足,启动后修改初始化视图控制器。

   - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:( NSDictionary *)launchOptions
 {
 if(![[NSUserDefaults standardUserDefaults] boolForKey:@"logged_in"]) {
    ViewControllerOne *vc1 = [[ViewControllerOne alloc]init];
    vc1=[self.storyboard instantiateViewControllerWithIdentifier: @"vc1"];
    [self presentViewController:vc1 animated:YES completion:Nil];
    } else {

    ViewControllerTwo *vc2 = [[ViewControllerTwo alloc]init];
    vc2=[self.storyboard instantiateViewControllerWithIdentifier: @"vc2"];

    [self presentViewController:vc2 animated:YES completion:Nil];
}
// Override point for customization after application launch.
return YES;
}
  • 写回答

2条回答 默认 最新

  • ReyZhang 移动开发领域新星创作者 2013-01-08 03:56
    关注

    如果是从storyboard中来创建控制器不需要先

    ViewControllerOne *vc1 = [[ViewControllerOne alloc]init];
    

    修改后的代码如下:

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
         UIViewController *rootVC;
        self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
        self.window.backgroundColor = [UIColor whiteColor];
        if(![[NSUserDefaults standardUserDefaults] boolForKey:@"logged_in"]) {
               rootVC=[self.storyboard instantiateViewControllerWithIdentifier: @"vc1"];
        } else {
               rootVC=[self.storyboard instantiateViewControllerWithIdentifier: @"vc2"];
         }
        window.rootViewConroller=rootVC;
        [self.window makeKeyAndVisible];
        return YES;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 spring后端vue前端
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题