这应该是一个非常基本的问题,即使您可以链接到涵盖此(或类似)主题的某种文章/教程,我也会很高兴。
我有一个包含四个选项卡的应用程序,每个选项卡都包含一个带有表格 View 的导航 Controller 。我 不 使用 UITableViewController 子类,因为我希望在某些表格之上有一个静态 View ,在所有内容之下有一个图像背景。我还使用了不同类型的自定义单元格(主要使用 -willDisplayCell 中的图像和代码配置)。由于我希望所有表格都具有相同的外观和感觉,我想知道如何重用一些代码,但我很难弄清楚这一点。我是否必须创建一个带有 UITableView socket 的“基础”UIViewController 子类,然后将其用作我的父类(super class)?还是我必须在单独的类中实现我的 UITableViewDelegate 并使用该类的对象作为 TableView 委托(delegate)?或者我应该使用自定义 UITableView 并将其子类化吗?
如果需要,我可以提供更多详细信息,但我想这对于开始讨论已经足够了。感谢您的帮助!
Best Answer-推荐答案 strong>
我会考虑子类化 UITableView 并将 dataSource 和 delegate 设置为 self 并在类中实现 GUI 逻辑并创建自定义逻辑来输入和输出数据(可能会将一些数据源/控制委托(delegate)函数转发给您的一个 VC)。
单元格的布局代码真的应该放在单元格逻辑中!您应该考虑创建包含布局和重用逻辑的自定义 UITableViewCell 子类(可能还有它们的 XIB)。 (也许是一个 dataObject 属性使单元格读取您的模型?!)。然后,您可以使用您的 UITableView 子类来创建和管理这些单元格(例如,模型类和 XIB 名称之间的映射)
这可能是一种生成大量可重用代码的方法,您只需要更改细节,例如添加模型类或修改它们的布局,或子类化模型类或子类化 UITableViewCells。
关于iphone - 如何通过我的应用程序为所有不同的 UITableViews 赋予相同的外观?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/7308081/
|