gpt4 book ai didi

ios - 在 iOS 中实现为多个 TableView 提供服务的一个数据源的最佳方式是什么

转载 作者:行者123 更新时间:2023-11-28 22:28:51 24 4
gpt4 key购买 nike

我有三个 UITableView,它们都需要访问基本相同的数据。唯一的区别是每个 TableView 如何格式化数据。实现这个的最佳方法是什么?我在想,如果每个 TableView 都有某种标签,我可以在发回 UITableViewCell 时从我的数据源中引用它。

最佳答案

每个数据源调用都传入请求信息的 UITableView。将此 TableView 与您的三个 TableView 进行比较,您可以确定它是哪一个并以不同方式设置数据格式。我可能会为每个 TableView 实现单独的方法,并将数据源方法传递给适当的方法。然后,另一种方法将创建自定义的单元格创建和设置。例如,对于 cellForRowAtIndexPath:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (tableView == [self tableView1])
return [self tableView1:tableView cellForRowAtIndexPath:indexPath];
if (tableView == [self tableView2])
return [self tableView2:tableView cellForRowAtIndexPath:indexPath];
if (tableView == [self tableView3])
return [self tableView3:tableView cellForRowAtIndexPath:indexPath];

Assert0(NO, @"UITableView not recognized!");
return nil;
}

- (UITableViewCell *)tableView2:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// Do normal cell creation for tableView1 here
}

我不知道从同一个数据源运行多个 UITableViews 是否有任何陷阱,所以小心行事。

关于ios - 在 iOS 中实现为多个 TableView 提供服务的一个数据源的最佳方式是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18085664/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com