在我的应用程序中,我创建了一个名为 welcome 的第一个 ViewController(在 Storyboard中),其中包含所有说明。在页面的末尾,我想插入一个可以选择的框,显示“不再显示”。通过单击此框并转到下一页,第一个 viewController 将消失。当我重新打开应用程序时, Controller 将不会再次显示。显示它的唯一方法是继续设置并选择开关“repristinate original settings”或类似的东西。拜托,任何人都可以帮助我吗?谢谢!
我找到了一个例子,但不是我想要的:
- (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"]; 如果(testoSalvato == nil){ testo.text = @"Non hai ancora inserito il tuo nome"; } 别的 { testo.text = [[NSString alloc] initWithFormat:@"Ciao %@", testoSalvato];
}
IB Outlet 链接到一个按钮
最佳答案
在 NSUserDefaults
中将 不再显示 作为 BOOL
存储..并在显示 View 之前检查它..
如果它是真的..不显示。否则显示它。
edit
假设您有您的应用程序委托(delegate),并且当前从中显示您不再显示 View (假设 A)..之后您显示另一个 View (假设 B)
然后在您的应用委托(delegate)中,您必须获得一个 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,因为它在默认情况下不存在..但是如果用户选择不显示,您应该将其保存为默认值,然后此代码将为您正常工作
关于ios - 不再显示 ViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9365215/