ios - 不再显示 ViewController

标签 ios xcode

在我的应用程序中,我创建了一个名为 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/

相关文章:

ios - 出于导出合规性目的(例如在 App Store 中),什么构成 'encryption'?

ios - 为什么查询(DBAccess)第一次在 Id 属性中返回 nil?

iphone - 将 CGAffineTransform 应用于 CGPath

ios - 电子邮件模板无法在 IOS 设备上打开

ios - 在 SwiftUI 中平滑更改 View 位置

objective-c - 日期时间模式的UIDatePicker中的组件大小是多少?

ios - 更新配置文件和证书

iphone - 动态创建 uiImageView

ios - 如何在Swift 5中使用NSPredicate使用CoreData搜索关系属性的ObjectID?

ios - 如何获取 AVCaptureVideoPreviewLayer 的 UIImage 而不是 AVCapturePhotoOutput 捕获