在我的应用程序中,我创建了第一个名为welcome的ViewController(在storyboard中),其中包含所有说明。在页面的最后,我想插入一个可以选择显示“不再显示”的框。通过单击此框并转到下一页,第一个viewController将消失。当我重新打开应用程序时,控制器将不会再次显示。显示它的唯一方法是进行设置并选择开关“重新设置原始设置”或类似的东西。拜托,任何人都可以帮助我吗?谢谢!
我找到了一个例子,但不是我想要的:
- (IBAction)leggi{
NSString *stringaTesto = campo.text;
testo.text = [[NSString alloc] initWithFormat:@"%@", stringaTesto];
NSString *testoInserito = testo.text;
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:testoInserito forKey:@"ciao"];
[defaults synchronize];
}
- (void)viewDidLoad
{ [super viewDidLoad]; NSString * testoSalvato = [[NSUserDefaults standardUserDefaults] objectForKey:@“ciao”]; if(testoSalvato == nil){ testo.text = @“Non hai ancora inserito il tuo nome”; } else { testo.text = [[NSString alloc] initWithFormat:@“Ciao%@”,testoSalvato]; }
}
IB Outlet链接到一个按钮
答案 0 :(得分:2)
将不再显示存储为BOOL
中的NSUserDefaults
..并在显示视图前进行检查..
如果它是TRUE ..不显示。另外明智地显示它。
修改
让我们说你有你的应用代表,并且当前显示你的不再显示视图(让我们说A)...之后你会显示另一个视图(让我们说B)
然后在你的app委托中你必须得到一个BOOL
像这样BOOL _Dont_Show_Again = [NSUSerDefaults standardDefaults] boolForkey : @"Don't Show"];
if(_Dont_Show_Again)
{
load B Code here...
}
else
{
load A Code here;
}
第一次_Dont_Show_Again将为0,因为它在默认情况下不存在..但是如果用户选择不显示你应该将它保存在默认值中,这个代码将适合你