【发布时间】:2013-07-05 18:54:49
【问题描述】:
对于我的应用程序的设置视图控制器,我想要一个表格视图,其中包含用户可以调整的一堆选项。切换开关、segues、步进器等。
完成此任务的最佳方法是什么?在每个单元格都遵循简单布局的情况下,表格视图非常简单。也许是一个标题和一些潜台词。但在这种情况下,一个单元格可能是五种布局中的一种,具体取决于正在更改的设置类型。
最好的方法是处理 UITableViewCell 的子类,并在 tableView 的 cellForRowAtIndexPath: 中,在返回单元格之前将自定义属性设置为 kind 到 toggle 或 label 之类的东西?然后在该单元格子类的viewDidLoad 中根据kind 属性设置单元格?
这是低效的吗?我是否应该制作一个已包含所有控件但隐藏的单元格,然后仅基于kind 启用它们?我是否应该为每种具有不同控件的单元格创建一个子类?
这就是我正在考虑的处理方式。但是有更优选的方式吗?这是否效率低下,因为它没有从一个单元到另一个单元的必然可预测模式?
【问题讨论】:
-
我推荐 @Wayne Hartman's answer 中提到的 InAppSettingsKit。但是,如果您要从头开始构建它,我将在情节提要中创建表格视图,并为每种不同类型的字段制作一个可重复使用的原型单元格——一个原型单元格用于文本字段,一个原型单元格用于开关,等等。每个原型单元格将是
UITableViewCell的不同子类,并实现您定义的协议,具有标签名称的属性,并且可能是设置字典中用于绑定字段的键的名称。
标签: ios uitableview