Ich bin neu in Swift, und ich habe ein Problem mit Fehler diese Klasse ist nicht Schlüsselwert Codierung kompatibel für den Schlüssel.Swift - setValuesForKeys (Wörterbuch) Fehler - diese Klasse ist nicht Schlüsselcodierung-kompatibel für den Schlüssel
Ich habe alle verwandten Themen erneut gelesen und keine Lösung für dieses Problem gefunden.
Bitte überprüfen Sie den Code und geben Sie mir einen Rat, was habe ich falsch gemacht?
class FriendScore: NSObject {
var name:String?
var highestScore:Int?
}
var allScoresArr = [FriendScore]()
var dataArr = [[String:Any]]()
dataArr =[["name": "Ben", "highestScore": 15],["name": "Alex", "highestScore": 12]]
for user in dataArray {
if let dictionary = user as? [String:Any] {
let friendScore = FriendScore()
//Error Happens Here "Thread Breakpoint"
friendScore.setValuesForKeys(dictionary)
allScoresArr.append(friendScore)
}
}
print(allScoresArr)
Der Fehler:
<__lldb_expr_73.FriendScore 0x608000266080>
setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key highestScore.
'libc++abi.dylib: terminating with uncaught exception of type NSException
Im Wesentlichen ein Duplikat von https://stackoverflow.com/questions/26366082/cannot-access-property-of-swift-type-from-objective-c: 'Int?' Ist nicht in Objective-C darstellbar. Machen Sie es zu einem "Int" oder "NSNumber"? –
@Martin R Vielen Dank für die Hilfe! – Rurom