我有一個用Swift編寫的類(模型),我想從Objective C類訪問它,但我不能。訪問從數組中的swift類的屬性
爲了解釋更多,我有一個數組正在追加使用Swift編寫的模型中的字典。
模式是這樣的:
@objc class GoalPreviewModel: NSObject {
var id : Int?
var name : String?
init(dictionary: NSDictionary) {
self.id = dictionary["id"] as? Int
self.name = dictionary["name"] as? String
}
}
這本詞典是通過這種模式填補很好,一切工作正常,只要我從寫在斯威夫特類訪問它。當我嘗試訪問該字典數組並訪問屬性時,會發生此問題。 當我想訪問名稱時,下面的語句工作正常。
[_nameLabel setText:[(NSString*) [[AppState sharedInstance].arrayOfDicts objectAtIndex:idx] valueForKey:@"name"]];
但是當我試圖訪問valueForKey:@「ID」它給了我這個樣子 錯誤「這個類不是鍵值編碼兼容的密鑰ID。」
有人可以幫我解決這個問題嗎?
在此先感謝!
出於好奇,如果你的屬性重命名爲'id'以外的東西它工作嗎? – sbooth
@sbooth我試過了,但它不起作用 – Srdjan
你有沒有[看過這個](http://stackoverflow.com/questions/24221407/can-a-swift-optional-int-int-be-exposed-to-jective -C-通過橋接)? – paulvs