【问题标题】:Settings-style grouped table设置样式分组表
【发布时间】:2008-12-04 04:14:22
【问题描述】:

所以在 iPhone 上创建一个 Settings 样式表是微不足道的。问题是,它们添加了大量代码,因为您的设置有大量选项/样式单元格。一个部分可能有一个检查列表,另一个可能有带有附件披露的单元格以进一步深入研究,另一个可能是带有 UITextFields 的标签。

我的问题是,创建此表的最简洁方法是什么。您是否通常创建 UITableViewController 的子类,然后为每种不同类型的单元格创建子类 UITableViewCell,并为这些单元格编写支持类?这意味着如果您有一个包含 4 个部分的设置样式表,所有不同类型的单元格,您将在表中加载 4 个 nib 并导入 4 个类文件?以编程方式设置框架、视图、文本字段并标记它们以供以后访问?

这个问题的答案可能是主观的,但我想知道你们专家认为解决这个常见问题的最优雅的方法。

【问题讨论】:

    标签: iphone objective-c cocoa-touch


    【解决方案1】:

    最简单的方法是在 tableView:cellForRowAtIndexPath: 方法中添加控件。

    我还建议这样做来帮助整理您的代码: A technique for using UITableView and retaining your sanity

    【讨论】:

      【解决方案2】:

      我宁愿在 Interface Builder 中设置大部分设置,而不是编写一大堆代码来使视觉/布局恰到好处。可以想象,需要在 iPhone 模拟器中进行好几轮“修改 - 构建 - 测试”才能让这个特殊的表格视图按照你想要的方式布局。

      我觉得在 IB 中进行所有这些粗略的视觉更改可能会更容易一些,然后通过代码中的标识符动态加载所有自定义 UITableViewCell。如果您想要的东西在 IB 中不可行,那么您可以对这段代码进行最后一轮调整。

      【讨论】:

        【解决方案3】:

        Three20 库(从 Facebook iPhone 应用程序中提取)有一组现成的单元格,其中包含各种控件。

        (但不确定您是否想使用它们。Three20 有点“未发明”的问题,并尝试子类化和扩展所有内容,因此添加它会给您的项目添加相当多的混乱。但是至少你可以拿它来做例子。)

        附:你的问题启发了我在 Stack Overflow 上打开一个“What are your favourite UITableView / UITableViewCell tricks?”线程,查看它以获取更多提示。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2010-11-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-03-02
          • 1970-01-01
          • 2018-08-05
          相关资源
          最近更新 更多