无法转换类型' NSTaggedPointerString'到了NSArray'

时间:2015-09-28 00:18:44

标签: ios swift

我在didSelectPost中的Share扩展中有以下代码:

let sharedDefaults = NSUserDefaults(suiteName: "group.appliaison.ActionExtensionSharingDefaults")
var urls: [String] = []
urls.append(self.contentText)
sharedDefaults?.setObject(urls, forKey: "stringKey")

以及我的主要应用程序VC中的viewDidLoad中的以下代码

var urls:[String] = []
    override func viewDidLoad() {
        super.viewDidLoad()

        let sharedDefaults = NSUserDefaults(suiteName: "group.appliaison.ActionExtensionSharingDefaults")
        urls = (sharedDefaults?.objectForKey("stringKey") as? [String])!
   ...
    }

但是当我运行它时,我收到以下错误:

  

无法转换类型' NSTaggedPointerString'到了NSArray'

1 个答案:

答案 0 :(得分:0)

 stringKey is as String in sharedDefaults.you can check with 
 following code

 if let item = sharedDefaults["stringKey"] {

     if item is String {

       print("I'm String -> \(item)")

    } else if item is [String] {

       print("I'm Arry -> \(item)")              
    }
}