我有一个学习模型和一个studyList模型,但是我不能将Study模型的pages数组分配给Studylist模型的Studypage数组
func didLoadData(studies: [Study]){
for item in studies{
let study = StudyList()
study.name = item._studyName
study.studyPages = item.pages //This line has error
studyList.append(study)
}
tableView.reloadData()
}
答案 0 :(得分:0)
错误本身是有道理的。它表示您正在尝试将一个Page对象数组分配给一个定义为StudyPage对象数组的变量。
从您的代码中,您通过一个Study对象循环。您尝试循环遍历它们,从中创建StudyList对象,然后追加到另一个数组以在表视图中显示。 根据我的猜测,您的StudyList类定义如下
class StudyList :NSObject {
var studyPages: [StudyPage]
}
您的Study类定义如下
class Study :NSObject {
var pages: [Page]
}
正如您所看到的,在for循环中,您不能只创建一个StudyList对象,然后将一个Page数组分配给其studyPages变量。在这种情况下,您需要将它们设为相同的类型,或者在Page
和StudyPage
之间进行某种转换