iOS6]在加载并显示当前视图之前跳转到另一个视图

时间:2012-12-11 00:09:51

标签: objective-c ios uiviewcontroller ios6

所以这就是我的软件应该运行的方式。

我有一个协议viewcontroller,它会在运行软件之前显示并询问用户是否同意我们的政策。一旦用户同意按下“同意”按钮,它将消失,永远不会再显示给他们。

问题是我必须在加载视图之前检查他们之前是否同意,并确定程序是否可以跳过协议页面......我不知道该在哪里做。

viewDidLoad()绝对不是在加载视图后字面上调用的那个。我尝试使用iniWithCoder()而没有运气。我尝试使用didfinishlaunchingwithoptions(),但似乎故事板并不称它为:( ...

对我有什么建议吗?

我会在等待你的建议的同时挖掘iOS Developer Library。谢谢!

2 个答案:

答案 0 :(得分:1)

您应该做的是记录他们点击NSUserDefaults页面的事实。从下次检查NSUserDefaults时,如果它存在,请不要显示页面。

一些示例代码,您可以放入App Delegate或视图控制器逻辑中。

if([[NSUserDefaults standardUserDefaults] valueForKey:@"visited"]){
    NSLog(@"Second time visitor");
}else{
    [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"visited"];
    NSLog(@"First time visitor");
}

[[NSUserDefaults standardUserDefaults] synchronize];

答案 1 :(得分:0)

您在AppDelegate.m中选择视图控制器。 检查存储在NSUserDefaults中的值后尝试此操作:

Conditionally start at different places in storyboard from AppDelegate