小编Lif*_*Lin的帖子

无法将'[NSObject:AnyObject]'类型的值转换为预期的参数类型'[String:AnyObject]'

Xcode7和swift,我的代码:

func loadDefaults() {
    let settingBundle = NSBundle.mainBundle().pathForResource("Settings", ofType: "bundle")
    if settingBundle == nil {
        return
    }

    let root = NSDictionary(contentsOfFile: settingBundle!.stringByAppendingString("Root.plist"))

    let prefrences = root?.objectForKey("PreferenceSpecifiers") as! Array<NSDictionary>

    let defautlsToRegister = NSMutableDictionary(capacity: root!.count)

    for prefrence in prefrences {
        let key = prefrence.objectForKey("Key") as! String!
        if key != nil {
            defautlsToRegister.setValue(prefrence.objectForKey("DefaultVale"), forKey: key!)
        }
    }

    NSUserDefaults.standardUserDefaults().registerDefaults(defautlsToRegister as [NSObject: AnyObject])
}
Run Code Online (Sandbox Code Playgroud)

问题代码:

NSUserDefaults.standardUserDefaults().registerDefaults(defautlsToRegister as [NSObject: AnyObject])
Run Code Online (Sandbox Code Playgroud)

建筑警告

无法将'[NSObject:AnyObject]'类型的值转换为预期的参数类型'[String:AnyObject]'

改变代码:

NSUserDefaults.standardUserDefaults().registerDefaults(defautlsToRegister as [String: AnyObject])
Run Code Online (Sandbox Code Playgroud)

建筑警告

'NSMutableDictionary'不能转换为'[String:AnyObject]'

请教我怎么做?谢谢.

swift xcode7

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

swift ×1

xcode7 ×1