gpt4 book ai didi

arrays - 字典中的 Swift 数组导致 NSCFArray

转载 作者:行者123 更新时间:2023-11-28 11:12:38 26 4
gpt4 key购买 nike

我在 Watch Interface 中准备了一个 swift Array 并将其发送到 iOS App:

@IBAction func buttonGeklickt() {

if WCSession.isSupported() {
let session = WCSession.defaultSession()
session.delegate = self
session.activateSession()

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "hh:mm"
let datumString = dateFormatter.stringFromDate(NSDate())

var swiftArray = [String]()
swiftArray.append(datumString)

var swiftDict = ["a":swiftArray]

session.transferUserInfo(swiftDict)

}

到目前为止一切顺利,在 iOS 应用程序上字典到了,但字典中的数组似乎有问题:

func session(session: WCSession, didReceiveUserInfo userInfo: [String : AnyObject]) {

print ("seems to be the same Dict = \(userInfo)")

if let vw = userInfo["a"] as? [String: String] {
print ("Never called! Here I would expect my array from the watch \(vw)")
}
}

我希望 vw 在 watchApp 中保存与 swiftArray 相同的数组。然而它似乎是 __NSCFArray 类型: screenshot那么我在这里做错了什么?

我是 Swift 的新手,但是我对 Objective C 很有经验,可以解决过去几年我遇到的每一个问题,但这个问题似乎太基础了,令人尴尬的是我无法解决它靠我自己。非常感谢您的帮助

最佳答案

如果我对您的代码的理解正确,那么您正在将“a”保存为 [String] 类型的值。但是您正在尝试将其读取为 [String:String]。而不是

if let vw = userInfo["a"] as? [String: String] 

尝试

if let vw = userInfo["a"] as? [String]

关于arrays - 字典中的 Swift 数组导致 NSCFArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34047225/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com