2013-07-01 73 views
1

我正在尋找一種方法來更改故事板內的開始視圖。我有兩種不同的觀點,一種是教程,另一種是應用程序本身。我想在第一次加載應用程序時加載教程,下次它應該只是應用程序本身。我怎樣才能用代碼做到這一點?更改故事板中的開始視圖

+0

你嘗試過什麼看法個 2.click?快速谷歌搜索已經給了我幾個答案。 [試試這個以前的問題](http://stackoverflow.com/questions/8451975/conditionally-start-at-different-places-in-storyboard-from-appdelegate),但跳到10月'12的答案。 – Dan

回答

1

檢查這些鏈接杉第一次應用程序啓動First iPhone LaunchFirst Launch

當U找到應用程序正在啓動第一次負載或推UR教程其他的ViewController加載默認的瀏覽器按照烏拉圭回合的需要。

2

你想從一個nibfile或AppDelegate中做它嗎?

在第一種情況下,只需檢查標誌「是初始視圖控制器」。

The flag in the nib file to check

第二

,你必須把你的控制器RootViewController的,就像這樣:

- (BOOL)application:(UIApplication *)app didFinishLaunchingWithOptions:(NSDictionary *)options{ 


    UINavigationController *navController = (UINavigationController *)self.window.rootViewController; 
    MenuViewController *menu = [navController.storyboard instantiateViewControllerWithIdentifier:@"MenuController"]; 
    CustomViewController *custom = [navController.storyboard instantiateViewControllerWithIdentifier:@"CustomController"]; 

    // First item in array is bottom of stack, last item is top. 
    navController.viewControllers = [NSArray arrayWithObjects:menu, custom, nil]; 

    [self.window makeKeyAndVisible]; 

    return YES; 
} 
1

一種方法用更少的代碼做的是創建第三個視圖控制器,把它根視圖,這將永遠是第一個加載,然後在這個視圖內,你檢查

哪個視圖加載下一個教程或應用程序視圖。

給每個觀看故事板ID

呼叫教程視圖:@"tutorialMainView" 和應用程序視圖:@"appMainView"

從根視圖內

然後,可以如下加載:

NSString *viewName = @"tutorialMainView"; 
UIViewController *tempView = [[UIStoryboard storyboardWithName:@"my_storyboard" bundle:nil] instantiateViewControllerWithIdentifier:viewName]; 

這取決於你以後要做什麼,或者推它,或者讓它取代當前的rootView(我建議將它設置爲新的rootViewController)

0

1.Go到故事情節上你想第一 看看這張圖,並設置初始控制器,因爲它是在圖像Storyboard snapshot