Как заметить, если UITableViewCell покинул видимую область? - PullRequest
1 голос
/ 19 февраля 2011

Я застрял с проблемой, которую я хочу знать в своем UITableView, если конкретный UITableViewCell, скажем, первый, все еще видим или уже находится вне видимой области. Я также хотел бы знать, будет ли ячейка, представляющая интерес, повторно использоваться в другом indexPath таблицы.

Один из моих - более поздних и разочарованных подходов - заключался в том, чтобы иметь поток, который знает первый объект ячейки и часто проверяет его, чтобы проверить, изменилось ли значение, которое я установил в ячейке. Очевидно, не очень хорошее решение.

Энди, идеи, как это сделать правильно?

1 Ответ

3 голосов
/ 19 февраля 2011

Помните, что UITableView является подклассом UIScrollView, и его делегат также подтверждает протокол UIScrollViewDelegate.

Таким образом, в вашем делегате таблицы вы можете реализовать метод scrollViewDidScroll: и проверить contentOffset - если он больше первой высоты ячейки, тогда первая ячейка не видна. Вы также можете получить массив из всех видимых в данный момент ячеек, используя метод -visibleCells, но я думаю, что знания contentOffset должно быть достаточно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...