iphone - NSUserdefaults 全局默认值

标签 iphone objective-c ios cocoa-touch

我正在制作一个应用程序,其中我添加了设置(nsuserdefaults)

问题出在我的主视图 Controller 中,我声明了用户默认值并获取了它的值。 但是,由于在用户进入设置并返回应用程序后不会调用 viewdidload。 我的设置没有更新。

我尝试在应用委托(delegate) applicationwillenterforeground 中声明用户默认值 但是我将如何将消息传递给 mainviewcontroller。

应用程序委托(delegate)中定义的变量在 mainviewcontroller 中无法识别。

更新:我已经声明了

- (void)applicationWillEnterForeground:(UIApplication *)application
{
NSUserDefaults *prefs = [NSUserDefaults  standardUserDefaults];
}

我在具有标识符 enabled_preference 的设置中有切换开关,所以我写了

   else
{
    [PlaySound prepareToPlay];      
    [prefs setBool:YES forKey:@"enabled_preference"];
    BOOL loop = [prefs boolForKey:@"enabled_preference"];
    NSLog(@" %d",loop);
    do {
          [PlaySound play];
    } while (loop ==YES);

它在控制台中记录 0 但是我在 plist 中将默认设置为 yes

最佳答案

如果将对象设置为 NSUserDefaults,则可以在应用程序的任何位置使用。无需在 appDelagate 中创建对象...

[[NSUserDefaults standardUserDefaults] setObject:@"Ramu" forKey:@"iCustomerId"];
[[NSUserDefaults standardUserDefaults] synchronize];

您可以使用下面的行在整个应用程序中获取该值

[[NSUserDefaults standardUserDefaults] valueForKey:@"iCustomerId"]

关于iphone - NSUserdefaults 全局默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8427343/

相关文章:

iphone - 在 iPhone 应用程序中下载文件

iphone - UIImagePickerController 在拍摄和选择图像时导致内存警告

ios - 此代码是 C 语言还是 Objective-C 语言

ios - 对从 NSDictionary 创建的 NSMutableArray 进行排序

android - 选项卡未显示在 flutter 中

iphone - 在 iphone 应用程序中从 UIScrollView 创建 PDF

iphone - 更改 TabBarItem 的 ViewController

iphone - 无需拉起键盘即可在 iOS 5.1 上获取听写输入

objective-c - 点符号解除分配?

ios - objective-c - 带有 header 和参数的 HTTP POST 请求句柄