2014-03-27 33 views
1

我想保持我的iPhone应用程序会话。如果应用程序进入后台状态或变为非活动状态因此,我必须保持最后关闭的同一屏幕。如何做到这一点?维护会话状态在我的iPhone应用

举例来说,在我的应用程序,用户只有一次。如果用户成功注册,则用户将被移动到这样当用户打开下一次应用在同一个屏幕会显示下一个屏幕进行注册。我知道这可以通过NSUserDefaults完成,但在我的情况怎么办?

+0

那里有没有在你的情况下,独特的开放式,存储一个布尔值,如果用户通过注册,不要” t加载第一个屏幕,加载第二个屏幕。这有什么问题? –

+0

嘿西蒙感谢您的帮助..但我不知道该怎么做,因为我是iOS初学者,我将首次尝试这些事情。 –

+0

'我知道,它可以通过,但NSUserDefaults的如何在我的case'做......如果你是一个新手,不知道该怎么做任何一件事,这是非常误导的完成。你的意思是你了解它,但是你的情况有一些特定的东西是不同的。这里没有人会为你写这篇文章,你将不得不研究它,阅读教程并做出一些努力。作为初学者不是不使用谷歌或读书的借口,我们都必须自己做。如果你有一个具体的问题,如“我在运行此代码和它的投掷的错误X”,回来再问 –

回答

0

设定哪个页面要设置会话

的值。例如我要保存会话register.m页

NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults] 
defaults setObject:@"1" forKey:@"Register"]; 
[defaults synchronize]; 

在我的应用我有使用main.m作为第一页,因此在同一页的viewDidLoad中获取值

- (void)viewDidLoad 
{ 
    self.navigationController.navigationBar.hidden=YES; 
    [super viewDidLoad]; 
    NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; 
    NSString* strValue = [defaults objectForKey:@"Register"]; 

    NSLog(@"NSUserDefaults.....>%@",strValue); 

    if ([strValue isEqualToString:@"1"]) 
    { 
     VerificationViewController *rf = [[VerificationViewController alloc] initWithNibName:@"VerificationViewController" bundle:nil]; 
     [self.navigationController pushViewController:rf animated:YES]; 
    } 
} 

浏览的页面中,如果条件上要导航控制时,下一次应用程序用户