2011-12-16 2 views
0

iOS 앱의 사용자 등록 프로세스를 구현하는 가장 좋은 방법은 무엇입니까? 나는 UserDefaults를 가지고 놀고 있는데 UserSettingsController를 가지고있다. UserSettingsController를 모달로 보여 주지만, 존재하지 않는다면 UserDefaults를 값으로 검사하려고 생각하고 있었다.iOS 개발, iPhone 앱 사용자 등록

이 말이 맞다면이 수표를 어디에서 할 것인지 잘 모르겠습니다. 내 "homeviewController"에서 didload를하고 있었지만 AppDelegate에 있어야한다고 생각합니다.

는 내가 매우 귀하의 의견과지도를 부탁드립니다

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
NSString *registered = [defaults objectForKey:@"registered"]; 
if (registered == nil) { 
    NSLog(@"empty"); 

// I need to do something here. 

} 

HomeController

내있는 viewDidLoad이 있습니다.

다음
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 

    if ([[NSUserDefaults standardUserDefaults] boolForKey:@"loggedIn"]) { 
     self.window.rootViewController = self.tabBarController; 
    } 
    else { 
     LogInViewController *loginVC = [[LogInViewController alloc] initWithNibName:@"LogInViewController" bundle:nil]; 
     self.window.rootViewController = loginVC; 
     [loginVC release]; 
    } 
    [self.window makeKeyAndVisible]; 

    return YES; 
} 

나는 콜백 방법이 아마 가장이 프로토콜 만들 수 있지만 로그인이

- (void)logInComplete {  
    self.window.rootViewController = self.tabBarController; 
} 
+0

에 성공 직접 때 그냥 호출 할 수 있습니다 – Justin

답변

0

내가 그것을 처리하는 방법입니다 이 질문은 [Code Review] (http://codereview.stackexchange.com)의 후보가 될 수 있습니까?
+0

은 효과가 있었지만 사용하는 이유는 궁금합니다. NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults]; NSString * fname = [defaults objectForKey : @ "firstName"]; if (fname! = nil) { self.window.rootViewController = self.tabBar; } else { UserViewController * uvc = [[UserViewController alloc] initWithNibName : @ "UserViewController"번들 : nil]; self.window.rootViewController = uvc; } 그리고 작동하지 않습니다. 나는 기본적으로 firstname가 nil change root view controller인지 확인하고 있는데, 내게 어떻게 다른가요? – Matt

+0

firstName을 userDefaults에 설정하면 안됩니다. 그건 그렇고 문자열 인 경우에는 stringForKey를 사용하는 것이 더 좋습니다 : – agilityvision

+0

예. 당신 말이 맞지만 문서는 ... http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSUserDefaults_Class/Reference/Reference.html 반환 값 개체는 지정된 키와 연관된 키. 키가 발견되지 않으면 nil. 덕분에 . – Matt