[英]Argument type '[String?]' does not conform to expected type 'AnyObject'
[英]iOS SWIFT - File Archive - Argument Type “[String?]” : does not conform to expected type'AnyObject'
我正在嘗試寫入存檔並收到此錯誤。
我的技術堆棧是:XCode 7.1 Beta和SWIFT。如果您有任何人可以共享確切的代碼來解決此問題,請相信。 提前致謝。
參數類型“[String?]”:不符合預期類型'AnyObject'
@IBAction func saveArch(sender: AnyObject) {
var contactArray = [name.text, address.text, phone.text]
NSKeyedArchiver.archiveRootObject(contactArray,
toFile: dataFilePath!)
}
謝謝
你應該試試
NSKeyedArchiver.archiveRootObject(NSArray(array: contactArray),
toFile: dataFilePath!)
您正在發送一個不符合AnyObject
的swift []
對象,因為數組和對象在swift中是不同的東西。
您還有選項問題:您的.text
中的一個或全部是String類型? (因此它可能是零)。
如果你是肯定的,這個領域都不是零,你可以使用
var contactArray = [name.text!, address.text!, phone.text!]
或者更改聲明。
如果你不確定,你應該做點什么
var contactArray = [String]()
for element in [name.text, address.text, phone.text] where element != nil {
array.append(element!)
}
NSKeyedArchiver.archiveRootObject(NSArray(array: contactArray),
toFile: dataFilePath!)
這樣,您只添加非nil
到contactArray元素順便說一句,Xcode的7.1出來了。 無需再使用測試版
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.