UIAlertController 的布尔值 Objective-C

Boolean for UIAlertController Objective-C

一个按钮触发一个警报;警报是 "one-time",出现一次但在用户点击 "OK" 后再也不会出现。

如果布尔值为0,则触发警报;如果为 1,则不会触发警报。如果用户点击 "OK",则 BOOL 的值设置为 1。

在 Objective-C 中设置一次性提醒的最佳方式是什么?

我会使用 NSUserDefaults 来存储您正在谈论的布尔标志。 像这样:

static NSString * const AlertHasBeenShownUserDefaultsKey = @"AlertHasBeenShownUserDefaultsKey";

-(void)showAlert {
    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
    if (![userDefaults boolForKey:AlertHasBeenShownUserDefaultsKey]) {
        //Show an alert

        [userDefaults setBool:YES forKey:AlertHasBeenShownUserDefaultsKey];
    }
}

NSUserDefaults 将在整个启动过程中保持 bool 值。如果用户重新安装应用程序,该值将被重置。