0
現在我有一個應用程序,用戶在打開應用程序時看到的第一個屏幕是登錄視圖。在啓動時自動切換視圖如果
但是,我只希望用戶看到該視圖,如果這是他們第一次嘗試登錄。
因此,如果某個nsuserdefault字段爲空,並希望顯示登錄視圖(如果不是),我想要顯示一個視圖。
我該怎麼辦?
我試圖在loginview.m的viewdidload中插入if子句,但顯然不能從viewdidload自動切換到另一個視圖?
現在我有一個應用程序,用戶在打開應用程序時看到的第一個屏幕是登錄視圖。在啓動時自動切換視圖如果
但是,我只希望用戶看到該視圖,如果這是他們第一次嘗試登錄。
因此,如果某個nsuserdefault字段爲空,並希望顯示登錄視圖(如果不是),我想要顯示一個視圖。
我該怎麼辦?
我試圖在loginview.m的viewdidload中插入if子句,但顯然不能從viewdidload自動切換到另一個視圖?
你應該在應用程序的代表中實現它。這應該在方法中完成:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
檢查那裏保存的用戶默認值並激發適當的控制器。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Check user defaults here
BOOL shouldShowLogin = [[NSUserDefaults standardUserDefaults] boolForKey:@"ShowLogin"];
MasterViewController *masterViewController = [[[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil] autorelease];
self.navigationController = [[[UINavigationController alloc] initWithRootViewController:masterViewController] autorelease];
if (shouldShowLogin) {
LoginViewController *loginViewController = [[[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil] autorelease];
[self.navigationController pushViewController:loginViewController animated:NO];
}
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
return YES; }
上面的例子應該告訴你這個想法。它使用導航控制器,但是沒有導航控制器就可以完成 - 通過模態呈現登錄控制器。