2010-02-19 93 views
0

嗨iam將創建一個應用程序和我的應用程序記住最後一個用戶動作,,這意味着用戶發現自己在他上次運行應用程序在同一頁面。這裏是我的代碼,但不起作用! 我的問題是什麼?iPhone SDK保存狀態問題!

.h 

#define HOME_VIEW 0 
#define VIEW1 1 
#define VIEW2 2 


.m  
    - (void)viewDidLoad { 
     [super viewDidLoad]; 

    // Set the name of the view 
    [[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:VIEW1] forKey:@"lastView"]; 

} 

App Delegate : 

- (void)applicationDidFinishLaunching:(UIApplication *)application { 
    // Retrieve the last view name 
    NSInteger constantView = [[NSUserDefaults standardUserDefaults] integerForKey:@"lastView"]; 

    switch(constantView) { 
     case HOME_VIEW : //load your UIViewController 
      break; 
     case VIEW1 : // load your VIEW1 
      break; 
     //... 
    } 
} 

回答

0

你有相當多的代碼失蹤,但嘗試移動

[[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:VIEW1] forKey:@"lastView"]; 

- (void) viewDidAppear 

,而不是viewDidLoad中

+0

抱歉,但仍然無法使用!對不起,我是新的iPhone SDK如何可以定義forKey:@「lastView」] – Momi

+0

請在switch語句前添加NSLog(@「%d」,constantView)並報告結果,以便在問題出現的位置提供線索。 –