2012-02-01 42 views
3

我的表格视图覆盖了部分视图。如果我有20个对象,我将在桌面视图中显示它们。但我想知道有多少个单元格可以被用户看到。 (即前5个单元格的数据对我来说是可见的:当我向下滚动时,其余单元格将加载,在这里我想知道没有滚动多少单元格被加载)如何检测UITableView中有多少个单元格可见

这可能吗?

+0

你搜索了一下接入小区后细胞indexpath的阵列?你的研究成果是什么?你尝试过什么吗? – 2012-02-01 10:20:17

回答

12

您可以使用[tableView visibleCells] count],它返回可见表格单元格的编号,如果我正确理解您想要的内容。

+0

可以请你告诉我如何完成表格视图加载数据,在这里我不是继承UITableView – user1179681 2012-02-01 10:36:36

+0

你可以检查这个问题,HTTP ://stackoverflow.com/questions/1483581/get-notified-when-uitableview-has-finished-asking-for-data,可能会帮助你。 – 2012-02-01 10:44:23

+0

是的,我已经通过了,但他们通过继承UITableView来解决这个问题,但这对我来说不可行 – user1179681 2012-02-01 10:46:10

0

它通常是:(tableView's height/cell row height) + 1

+0

是的,*通常*是。但它可以是'ceil(tableView的高度/单元格行高度)+ 1'。无论如何,这些公式只能找到可见的最小或最大数量。要找到*当前*数量的可见单元格,有必要知道滚动偏移:) – nacho4d 2014-12-01 09:12:42

1

你能走表的可见部分的大小,然后一个单元的大小,划分他们知道有多少人适合在屏幕上?

3

下面的代码会给你当前可见

NSArray *visiblePaths = [self.tableView indexPathsForVisibleRows]; 

获得索引路径,你可以很容易地在一个特定的indexpath

相关问题