Я использую фреймворк, который асинхронно загружает данные из кеша устройства и возвращает его. Однако метод, определение которого я не могу изменить, возвращает массив из AnyObject
. У меня есть класс под названием Attendee
, из которого я уверен, что объекты принадлежат. Мне нужно преобразовать массив [AnyObject]
в массив [Attendee]
. В настоящее время я делаю это, интегрируя через возвращенный массив, приписывая каждому отдельному объекту и сохраняя его в другом месте. Я попытался просто придать тип массиву, но при этом получаю быструю ошибку во время выполнения. Есть ли более эффективный способ превратить [AnyObject]
в [Attendee]
, чем просто прокручивать его?Самый эффективный способ приведения в порядок массива
var attendees: [Attendee] = []
let query = PFQuery(className: "Attendee")
query.findObjectsInBackgroundWithBlock { (objects: [AnyObject]!, error: NSError!) -> Void in
if(error == nil) {
attendees = objects as! [Attendee]
} else {
println("Error fetching attendees: \(error) ")
}
}
Attendee Определение класса
class Attendee: PFObject, PFSubclassing {
override class func initialize() {
var onceToken : dispatch_once_t = 0;
dispatch_once(&onceToken) {
self.registerSubclass()
}
}
class func parseClassName() -> String! {
return "Attendee"
}
}
Можете ли вы опубликовать код, в котором вы пытались вызвать массив, и получили ошибку времени выполнения. Вы должны просто иметь возможность делать объект как! [Attendee] ' – sbarow
, а не говорить о вас код, вы должны показать его. – vikingosegundo