小编And*_*ger的帖子

对"InputModeProperties.plist"的数百次访问落后于我的游戏(iPhone)

我有一个奇怪的问题与Tiny Wings的错误修正.在我的游戏中我使用的东西如下:

NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];      
[userDefaults setFloat:musicVolume forKey:@"musicVolume"];
Run Code Online (Sandbox Code Playgroud)

用于保存一些首选项和高分表.在游戏结束时,当游戏画面出现时,游戏将高分保存到standardUserDefaults.它运行良好,直到游戏显示如下的UIAlertView:

UIAlertView *alert = [[UIAlertView alloc] init];
[alert setTitle:@"Get ready!"];
[alert setDelegate:self];
[alert addButtonWithTitle:@"Ok"];
[alert show];
[alert release];
Run Code Online (Sandbox Code Playgroud)

之后,AlertView消失每次游戏保存财产以后一会儿游戏滞后(在几秒钟一些设备)的standardUserDefaults.在游戏使用UITextField输入玩家名称后也会发生这种情况.在使用两个UIKit Elements中的一个之前游戏中没有任何延迟,但在使用它们之后游戏会延迟直到我重新启动应用程序.我用性能工具分析了这个问题,"I/O活动"仪器显示有数百个"开放 - 读取 - 关闭"访问

/System/Library/Frameworks/UIKit.framework/InputModeProperties.plist
Run Code Online (Sandbox Code Playgroud)

这导致了滞后.

我完全不知道该怎么做.有任何想法吗?

编辑:
苹果开发者论坛http://devforums.apple.com/message/424374#424374中有一个帖子,其中有人有同等的问题,似乎它只出现在iOS 4.3中.我已经测试了它,而且仅在我的4.3设备上发生了滞后(不是在3.1 iPod Touch和4.2 iPad上).

objective-c nsuserdefaults uikit property-list ios

22
推荐指数
1
解决办法
651
查看次数

标签 统计

ios ×1

nsuserdefaults ×1

objective-c ×1

property-list ×1

uikit ×1