Почему нельзя использовать NSCFNumber (Core Data) для NSArray?Невозможно присвоить значение типа '__NSCFNumber'() в 'NSArray' swift
Ошибка:
Could not cast value of type '__NSCFNumber' (XXXXXXXX) to 'NSArray' (XXXXXXXX).
Код:
//Fetch Settings
func fetchAccounSetting(){
let entityDescription = NSEntityDescription.entityForName("UserSettings", inManagedObjectContext: Context!)
let request = NSFetchRequest()
//let data = UserSettings(entity: entityDescription!, insertIntoManagedObjectContext: Context)
request.entity = entityDescription
var dataObjects: [AnyObject]?
do {
dataObjects = try Context?.executeFetchRequest(request)
} catch let error as NSError {
print(error)
dataObjects = nil
}
for result in dataObjects as! [NSManagedObject] {
let dataSelected = NSArray(array: result.valueForKey("favCategory")! as! NSArray)
print(dataSelected)
}
UPDATE: Как я могу получить граф dataSelected
?
Вы не можете отличить число к массиву, потому что это не тот же тип объекта. –
По той же причине я не могу превратить свой автомобиль в слона. Это не одно и сказать, что это не так. Значение для favCategory - это NSNumber, а не массив, поэтому ваш принудительный downcast не работает – Paulw11
Эй, не будет ли ваша ошибка цикла, если 'dataObjects' был равен нулю? (если возникла ошибка и вы выбрали запрос на выборку) –