Mit swift 1.2 kann ich ein Array von Poiter mit Parse Subclass nicht mehr abrufen und es mit einer anderen Parse Subclass downcasting.PFSubclassing mit array pointer und swift 1.2 - fataler Fehler: NSArray Element konnte dem Swift Array Element Typ nicht entsprechen
fand ich immer die Fehlermeldung:
fatal error: NSArray element failed to match the Swift Array Element type
Haben Sie eine Idee haben, oder es kommen kann?
Der Code:
import Foundation
class ShotModel : PFObject, PFSubclassing {
/**
* MARK: Properties
*/
@NSManaged var name: String
@NSManaged var pics: [PicModel]
override class func initialize() {
var onceToken : dispatch_once_t = 0;
dispatch_once(&onceToken) {
self.registerSubclass()
}
}
class func parseClassName() -> String! {
return "Shot"
}
}
import Foundation
class PicModel : PFObject, PFSubclassing {
/**
* MARK: Properties
*/
@NSManaged var name: String
override class func initialize() {
var onceToken : dispatch_once_t = 0;
dispatch_once(&onceToken) {
self.registerSubclass()
}
}
class func parseClassName() -> String! {
return "Pic"
}
}
// this cause error
var shot: ShotModel = // a shot model get with fetchInBackgroundWithBlock
shot.pics // fatal error: NSArray element failed to match the Swift Array Element type
Vielen Dank für Ihre Zeit
Cast 'shot' zu' PFObject' statt 'ShotModel' dann können Sie ' shot.valueForKey ("pics") 'bekommen. Versuchen Sie einmal, es hat für mich funktioniert. –
Ja, ich habe Zugriff auf 'shot.valueForKey (" pics ")' mit Cast 'ShotModel', kann aber nicht' shown.valueForKey ("pics") 'to' [PicModel] ' –
" @NSManaged "ändern var pics: [PicModel] 'zu' @NSManaged var pics: [** PFObject **] 'Ich hatte das selbe Problem gelöst, indem ich nach' PFObject' wendete –