如何以编程方式显示具有故事板中定义的导航控制器和tabbar控制器的控制器?

时间:2014-10-09 14:01:17

标签: ios objective-c uistoryboard

我想从应用代表处显示嵌入在导航控制器中的tableview控制器。

我需要这样做的原因是我在api上构建一个包装器,所以要登录我将用户引导到相关的网页,在那里他们可以登录以授予我的应用程序访问其凭据的权限,然后发送它们到触发我的应用程序的相关网址终点。此时我想在导航和tabbarcontroller中加载tableviewcontroller。

是否可以在故​​事板上定义多个入口点?

此处显示了我当前故事板配置的屏幕截图: https://www.dropbox.com/s/6wfo5werrs6vwy1/Screenshot%202014-10-09%2008.43.15.png?dl=0

1 个答案:

答案 0 :(得分:1)

您无法在故事板上定义多个入口点。要实现这一点,您应该使用[UIStoryboard instantiateViewControllerWithIdentifier:]并根据您的条件将视图控制器设置为您的应用程序委托中的根视图控制器。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    NSString *identifier
    if (/* path A */){
        identifier = @"vc1";
    } else {
        identifier = @"vc2";
    }
    UIViewController *vc = [storyboard instantiateViewControllerWithIdentifier:identifier];
    self.window.rootViewController = vc;
    [self.window makeKeyAndVisible];
}