【发布时间】:2015-09-27 01:41:02
【问题描述】:
我想做一个NSFetchRequest 来将我的数据显示到UICollectionView 中:
import UIKit
import CoreData
let appDelegate: AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let context: NSManagedObjectContext = appDelegate.managedObjectContext
class GarageViewController: UIViewController, UICollectionViewDelegate,UICollectionViewDataSource {
@IBOutlet weak var backgroundView: UIImageView!
@IBOutlet weak var collectionView: UICollectionView!
var voitures: [Voiture] = [Voiture]()
override func viewDidLoad() {
super.viewDidLoad()
collectionView.reloadData()
let fetchRequest = NSFetchRequest(entityName: "Voiture")
fetchRequest.resultType = .DictionaryResultType
do {
try voitures = context.executeFetchRequest(fetchRequest) as! [Voiture]
}
catch let fetchError as NSError {
print("VoitureFetch error: \(fetchError.localizedDescription)")
}
if (voitures.count > 0) {
for voiture in voitures as [Voiture] {
print(voiture.nom!)
}
}
else {
print("Aucune voiture")
}
}
当我运行代码时,我得到了那个错误:
fatal error: NSArray element failed to match the Swift Array Element type
感谢您的帮助!
【问题讨论】:
-
获取请求返回的数组中的内容。它不是
Voiture对象。可能是NSManagedObject个实例。 -
你可以回答你自己的问题(而不是在你的问题中发布解决方案),让将来遇到这个问题的人更容易。
-
好的,谢谢你。
标签: ios iphone swift core-data nsfetchrequest