我花了几个小时试图将胶卷放到胶片上。我需要打开电影的我的收藏视图项目视图。我可以遵循不同的指南并发布,但是它总是给我一个空数组。我是新手,对不起我的问题,但是我需要您的帮助。
这是我的代码:
var taskArrayScheda : NewFilm?
override func viewDidLoad() {
super.viewDidLoad()
self.fetchData()
if(self.taskArrayScheda != nil) {
let schedaOk = taskArrayScheda
mostraDatiNellaScheda(schedaOk!)
} else { print("errore array vuoto") }
}
func mostraDatiNellaScheda(_ sched:NewFilm) {
// get title
titoloScheda.text = sched.titolo
}
func fetchData() {
let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext
let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "NewFilm")
do {
taskArrayScheda = try context.fetch(NewAnime.fetchRequest())
ERROR ::::: Cannot assign value of type '[Any]' to type 'NewFilm?'
} catch {
print(error)
}
}
答案 0 :(得分:1)
fetch()
返回一个数组。但是目前,您将fetch()
结果分配给单个对象var taskArrayScheda
。
您将需要以下内容:
var taskArrayScheda: [NewFilm]?
那你应该做:
taskArrayScheda = try context.fetch(NewAnime.fetchRequest()) as? [NewFilm]
我在这里假设NewAnime
是NewFilm
的子类,看这两个类名似乎很有意义。