ios - iOS:registerDefaults导致崩溃

标签 ios

我的应用在启动时崩溃。请给我指路。非常感激。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:    (NSDictionary *)launchOptions
{
NSDictionary *temp = @{@(0): NSStringFromCGPoint(CGPointZero),
                       @(1): NSStringFromCGPoint(CGPointZero),
                       @(2): NSStringFromCGPoint(CGPointZero),
                       @(3): NSStringFromCGPoint(CGPointZero),
                       };

// Pro
NSDictionary *defaults = @{ // ... other PrefKeys 

                           // No crash if I comment out this line
                           GMListVCOffsetsPrefKey:temp,
                           };

[[NSUserDefaults standardUserDefaults] registerDefaults: defaults];
}

最佳答案

plist中的键必须是字符串。这里有数字。

参见Property list documentation:“尽管NSDictionary和CFDictionary对象允许它们的键成为任何类型的对象,但是如果键不是字符串对象,则集合也不是属性列表对象”。

关于ios - iOS:registerDefaults导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15451927/

相关文章:

ios - 在 tableviewCell 中快速实现一个类似的按钮

ios - GMSSyncTileLayer 类 --- 如何传递我的 mapView? ..x 和 y 到底是什么?

ios - 找到满足 `ParseFacebookUtils` 依赖项的规范,但它们需要更高的最低部署目标

ios - 使用以编程方式创建的自定义 UITableViewController 管理 UITableView

ios - 如何更改 DispatchQueue 中对象的延迟时间

ios - 构建应用程序时忽略字体?

ios - 在iPhone和移动设备上显示图表

ios - 我从哪里获得 iPhone SDK

ios - Button.center 不适用于 Swift 3/4 中的所有屏幕

iphone - 创建一个可以嵌入到另一个 View 中的 UIScrollView