【问题标题】:Programmatically call storyboard in delegate以编程方式在委托中调用故事板
【发布时间】:2012-04-07 08:45:15
【问题描述】:

我正在尝试以编程方式调用我的故事板。 我的故事板包含以下内容:

[导航控制器] -> [MainMenuView] -> [DetailsView]

“MainMenu”标识符被放置在 [MainMenuView] 中

我遇到的问题是屏幕显示空白。我需要做什么?

谢谢。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{       
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

    MainMenuView *rootViewController = [storyboard instantiateViewControllerWithIdentifier:@"MainMenu"];

    return YES
}

【问题讨论】:

    标签: objective-c ios xcode uiviewcontroller uistoryboard


    【解决方案1】:

    您需要设置应用程序窗口的 rootViewController 属性:

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {       
        UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
        MainMenuView *rootViewController = [storyboard instantiateViewControllerWithIdentifier:@"MainMenu"];
    
        self.window.rootViewController = rootViewController;
    
        return YES;
    }
    

    【讨论】:

    • 我已经设置了但是还是空白
    • @RockBaby:AppDelegate 的 window 属性尚未设置,您的消息传递为零。首先在 didFinish... 中执行此操作:self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    【解决方案2】:

    你需要先手动创建窗口,然后在里面添加rootViewController(之前的答案几乎是正确的):

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
        UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
    
        UIViewController *mainViewController = [storyboard instantiateInitialViewController];
    
        self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
        self.window.rootViewController = mainViewController;
        [self.window makeKeyAndVisible];
    
        return YES;
    }
    

    【讨论】:

    • ios 9 不再适用
    猜你喜欢
    • 1970-01-01
    • 2021-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-14
    相关资源
    最近更新 更多