首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >保存选项设置的状态(cocos2d)

保存选项设置的状态(cocos2d)
EN

Stack Overflow用户
提问于 2015-07-14 23:25:42
回答 1查看 46关注 0票数 0

我有一个问题,我想让我的游戏保存的状态在我的选项场景中的设置,对于example..if我关闭了音乐点击音乐按钮,音乐将关闭和写下的音乐图像将是“音乐关闭”也如果我改变场景,设置保持不变,直到这里是ok....but当我重新启动应用程序时,设置返回与以前一样,音乐打开和“音乐打开”在写下音乐图像,那么我如何解决这个问题呢?

EN

回答 1

Stack Overflow用户

发布于 2015-07-18 07:01:32

实现这一目标的最简单、最常见的方法是NSUserDefaults。

首先,你必须在第一次启动时注册默认值(在applicationDidFinishLaunch中)。

代码语言:javascript
运行
复制
 NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
if (![userDefaults boolForKey:@"hasLaunchedOnce"]) {
            [userDefaults setBool:YES forKey:@"hasLaunchedOnce"];
            NSDictionary* defaults = [NSDictionary dictionary];
            [defaults setValue:@YES forKey:@"musicOn"];
            [userDefaults registerDefaults:defaults];
    }

然后,例如,您在按下按钮时设置新值

代码语言:javascript
运行
复制
musicButton.block = ^(id sender) {
        NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setBool:YES forKey: @"musicOn"];
// [userDefaults synchronize]; // actually you dont really need to force it everytime, but if you want

    };

如果你想检查你的代码中的任何地方是否有音乐,你只需这样做

代码语言:javascript
运行
复制
  NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
 if ( [userDefaults boolForKey:@"musicOn"] ) { /* do something */}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31410869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档