UIAlertView展示一次

JSA*_*986 0 xcode objective-c uialertview ios

我知道这可能听起来很奇怪,我已经在以前的应用程序中工作,现在在我现在的应用程序不能使用相同的代码工作.我试图在应用程序启动时显示一次警报视图uisng:

 if (![@"1" isEqualToString:[[NSUserDefaults standardUserDefaults] objectForKey:@"alert"]]){

    [[NSUserDefaults standardUserDefaults] setValue:@"1" forKey:@"alert"];
    [[NSUserDefaults standardUserDefaults] synchronize];
}



 UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"title" message:@"Text here" delegate:nil cancelButtonTitle: @"Ok" otherButtonTitles: nil];

[alert show];
Run Code Online (Sandbox Code Playgroud)

有人会介意检查我已经在这里做了一些愚蠢的事情,我已经在我的应用程序中交叉检查它,这是有效的,所有看起来都是一样的.

msk*_*msk 5

如果阻止显示内部警报

if (![@"1" isEqualToString:[[NSUserDefaults standardUserDefaults] objectForKey:@"alert"]]){

    [[NSUserDefaults standardUserDefaults] setValue:@"1" forKey:@"alert"];
    [[NSUserDefaults standardUserDefaults] synchronize];
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"title" message:@"Text here" delegate:nil cancelButtonTitle: @"Ok" otherButtonTitles: nil];

    [alert show];

}
Run Code Online (Sandbox Code Playgroud)

或使用

if ([[NSUserDefaults standardUserDefaults] boolForKey:@"alertShownOnce"] == NO)
{
   UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"title" message:@"Text here" delegate:nil cancelButtonTitle: @"Ok" otherButtonTitles: nil];
    [alert show];
    [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"alertShownOnce"];
    [[NSUserDefaults standardUserDefaults] synchronize];
}
Run Code Online (Sandbox Code Playgroud)