答案 0 :(得分:0)
虽然它基于应用程序获取数据的方式,但对于这种情况, - 通常 - 我建议创建自己的自定义模型而不是仅仅声明数组的数组/字典。例如:
add_index :addresses,[:addresable_type,:addressable_id,:main] , :name => 'main_address'
所以你可以宣布这样一系列的家庭:
struct Family {
var title: String
var thumbnail: UIImage
var members: [Member]
}
struct Member {
var firstName: String
var lastName: String
var thumbnail: UIImage
}
因此表视图的数据源将是let families = [Family(title: "YOGA", thumbnail: UIImage(named: "YOGA.jpg"), members: [Member(firstName: "John", lastName: "Smith", thumbnail: UIImage(named: "John.jpg"))]),
Family(title: "DEMO1", thumbnail: UIImage(named: "DEMO_1.jpg"), members: [Member(firstName: "Foo", lastName: "Bar", thumbnail: UIImage(named: "Foo.jpg"))])]
// and so on...
,表视图单元数据源中的每个集合视图都是当前系列的families
。
通过遵循这种方法,您可以轻松模板化您的数据更具表现力。