UITableViewController具有单独的数据源对象

时间:2014-02-13 15:07:10

标签: ios datasource tableview

我有一个单独的对象用于UITableViewController的数据源。我想动态修改数据源,但我不希望在数据源中直接引用tableView对象。如何通知控制器有关数据源的更改?

目前我使用的是通知中心,但我认为这不是正确的选择。

3 个答案:

答案 0 :(得分:3)

可以发送NSNotification告诉UITableView模型已更改,再次读取数据并重新加载表。

答案 1 :(得分:3)

为数据源提供对要刷新的表视图的引用或添加属性是合适的,该属性是数据源在更新某些数据时调用的块(此块由视图控制器提供)并重新加载表视图。)

块方法更通用,允许您的数据源更容易地与表/集合视图一起使用。

在这两种情况下,您正在查看的关系是直接关系,而且是1比1.这不适合使用通知。通知适用于非直接,广播类型1到多种通信要求。

答案 2 :(得分:0)

我得到了这个东西的结构,一个替代方案我是KVO,但是我没有在实现KVO方面取得太大成功,所以我也在考虑使用Block。你更喜欢哪种方法?