3

有没有办法让表格视图不回收 UITableViewCell 所以在加载所有单元格后,它不会要求单元格(即 tableView:cellForRow ...)?

我知道我可以将表格视图放在滚动视图中并使表格视图与滚动视图具有相同的大小,因此将加载所有单元格,但是我的某些单元格的大小可变,那么我需要更新滚动更改单元格大小后视图的内容大小。

有没有其他方法可以做到这一点?

更新:

抱歉误导,实际上我的意思是如何使它一旦创建就不再删除单元格,所以如果有十个单元格,并且 dequeueReusableCell 不会返回任何单元格并且在十个 tableView:cellForRow: 之后它不会再次调用它.

简单地不使用可重用标识符将使其每次根据需要创建新单元格,即使位置 1 的单元格已创建但随后被重用于位置 2。

4

3 回答 3

8

将重用标识符设置为零。

这比为每个单元格使用不同的标识符要好得多,因为表格现在可以快速处理不需要的单元格。如果它们设置了一些标识符,则无法判断您是否会重用它们。

因此,您不必完全错过重用部分,只针对您不想要的单元格。如果新单元格包含相同的子视图(可能只是布局和配置不同) - 重用可能仍然更好。

于 2012-10-05T08:00:22.513 回答
0

只是不要使用 cellIdentifier,或为每个单元格使用不同的标识符。

于 2012-10-05T07:34:50.440 回答
0

只是不要- (id)dequeueReusableCellWithIdentifier:(NSString *)identifiercellForRowAtIndexPath方法中使用并每次都创建一个新单元格。另一种方法是为您创建的每个单元格提供不同的单元格标识符。

现在,如果您可以详细说明为什么不希望 tableview 回收其单元格(这是 tableview 的强大功能之一),您可能会找到其他方法来通过重用单元格来实现相同的目的..!!

希望能帮助到你..:)

于 2012-10-05T07:55:21.987 回答