el-*_*lor 3 objective-c uitableview ios
我的应用程序中有4个不同的视图,当前显示完全相同的UITableViewCell.在我的故事板中,我有4次出现相同的单元格(这是一个非常复杂的自定义单元格),在.m文件中,我或多或少都有完全相同的代码将数据关联到UITableViewCell.
我知道这是一种错误的方法 - 维护和更新非常困难.
在故事板中集中UITableViewCell的正确方法是什么,并集中填充表的代码,以便我可以在不同的视图中重用它?
我个人认为在代码中编写所有视图是达到最大可重用性(和可扩展性,因为nib文件不能被子类化)的最佳方法.但我认为您也可以为UITableViewCell创建一个单独的nib并将其加载到每个视图控制器中.我认为无论采用哪种方法(在代码中完全设计单元格,或者在nib文件的帮助下),您都可以在代码中加载单元格viewDidLoad,使用类似于:
[self.tableView registerClass:MyCustomCell.class forCellReuseIdentifier:@"Cell"];
Run Code Online (Sandbox Code Playgroud)
以上是我最常使用的,因为我喜欢在代码中编写所有视图,显然对于加载nib,你可以参考dirtydanee描述的方法.
然后,您的tableView将加载具有相同标识符的单元格 -cellForRowAtIndexPath:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
MyCustomCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"];
// configure your cell here ...
return cell;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
533 次 |
| 最近记录: |