【问题标题】:Best practices for designing table view for app settings?为应用设置设计表格视图的最佳实践?
【发布时间】:2013-07-05 18:54:49
【问题描述】:

对于我的应用程序的设置视图控制器,我想要一个表格视图,其中包含用户可以调整的一堆选项。切换开关、segues、步进器等。

完成此任务的最佳方法是什么?在每个单元格都遵循简单布局的情况下,表格视图非常简单。也许是一个标题和一些潜台词。但在这种情况下,一个单元格可能是五种布局中的一种,具体取决于正在更改的设置类型。

最好的方法是处理 UITableViewCell 的子类,并在 tableView 的 cellForRowAtIndexPath: 中,在返回单元格之前将自定义属性设置为 kindtogglelabel 之类的东西?然后在该单元格子类的viewDidLoad 中根据kind 属性设置单元格?

这是低效的吗?我是否应该制作一个已包含所有控件但隐藏的单元格,然后仅基于kind 启用它们?我是否应该为每种具有不同控件的单元格创建一个子类?

这就是我正在考虑的处理方式。但是有更优选的方式吗?这是否效率低下,因为它没有从一个单元到另一个单元的必然可预测模式?

【问题讨论】:

  • 我推荐 @Wayne Hartman's answer 中提到的 InAppSettingsKit。但是,如果您要从头开始构建它,我将在情节提要中创建表格视图,并为每种不同类型的字段制作一个可重复使用的原型单元格——一个原型单元格用于文本字段,一个原型单元格用于开关,等等。每个原型单元格将是 UITableViewCell 的不同子类,并实现您定义的协议,具有标签名称的属性,并且可能是设置字典中用于绑定字段的键的名称。

标签: ios uitableview


【解决方案1】:

如果我不喜欢其中的某些内容,我不喜欢我必须调试其他人的代码的想法。这就是为什么我尝试自己编写代码,然后看看它是否符合我的需要。如果没有,那么我会去看看 InAppSettingsKit。

你要求的是一个非常简单的东西,我已经在我的几乎每个应用程序中实现了,即带有选项的 UITableView。

我就是这样做的。您可以在 xcode 中直接完成所有这些操作。

  • 创建一个 UITableView 控制器
  • 使其成为导航控制器。这样您就可以像“设置”一样在其上添加标题
  • 将其更改为静态单元格
  • 然后将其更改为分组单元格
  • 根据需要创建任意数量的组
  • 根据需要为每个单元格添加开关
  • 为每个分组添加页脚和页眉
  • 根据需要在每个选项旁边添加漂亮的图片。

我希望这会有所帮助。这是我的示例项目设置屏幕截图之一。您看不到我创建的页眉和页脚。

【讨论】:

  • @Bhargav 在 Storyboard 中,您可以选择单元格并将其附件更改为 Disclosure Indicator
【解决方案2】:

由于您使用它进行设置,您是否考虑过InAppSettingsKit

如果这可能有点过头了,我会在故事板中创建一个静态表格视图,我可以在其中布置每个不同的设置,并在设计时控制其外观。

【讨论】:

    猜你喜欢
    • 2011-11-18
    • 2023-04-06
    • 1970-01-01
    • 2017-09-05
    • 1970-01-01
    • 1970-01-01
    • 2017-11-30
    • 1970-01-01
    • 2022-01-10
    相关资源
    最近更新 更多