1. 程式人生 > >使用StoryBoard的時候加入使用者引導頁面

使用StoryBoard的時候加入使用者引導頁面

如果想讓一個APP加上引導頁面是一個非常完美的舉動

但是,總會遇到一些問題

(不要忘記在APDelegate裡面加上使用者引導頁面的標頭檔案和程式啟動時的第一個頁面哦)

情況一:純程式碼

判斷是否是第一次啟動應用程式

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

self.window = [[UIWindowalloc]initWithFrame:[[UIScreenmainScreen] bounds]] ;

if

(![[NSUserDefaultsstandardUserDefaults] boolForKey:@"firstLaunch"])

    {

         [[NSUserDefaultsstandardUserDefaults] setBool:YESforKey:@"firstLaunch"];

        NSLog(@"第一次啟動");

//如果是第一次啟動的話,使用UserGuideViewController (使用者引導頁面) 作為根檢視

UserGuideViewController *userGuideViewController = [[UserGuideViewControlleralloc

] init];

     self.window.rootViewController = userGuideViewController;

    }

    else

    {

       NSLog(@"不是第一次啟動");

TranslateController *tranVC = [[TranslateControlleralloc] init];

           self.window.rootViewController = tranVC;

     }

         self.window.backgroundColor = [UIColor whiteColor

];

         [self.windowmakeKeyAndVisible];

returnYES;

}

情況二:使用storyboard

情況基本相同,不同的是

NSLog(@"不是第一次啟動");

        UIStoryboard *story = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

UIViewController * vc = [story instantiateViewControllerWithIdentifier:@"TranslateController"];

self.window.rootViewController = vc;

解釋一下原理先,如果使用純程式碼的話,不是第一次啟動應用程式的時候會自動執行下面的程式碼,所以不會有問題

如果使用storyboard的話,初始化第一個檢視控制器(程式第一個介面),什麼都沒有,(除非你自己使用程式碼新增控制元件),而且storyboard在啟動的時候並不是從這裡開始的,而是預設storyboard的第一個檢視控制器,所以,加上一個標誌就好


這樣它就能找到應該啟動的介面