Чтобы остановить перезагрузку данных UITableView

#objective-c #cocoa-touch #ios

#objective-c #cocoa-touch #iOS

Вопрос:

Как остановить перезагрузку данных UITableView при прокрутке вверх и вниз?

Комментарии:

1. Ну, я не думаю, что это хорошая вещь, чтобы сделать..

2. UITableView, так что это должна быть ios..

3. Я знаю, что это не очень хорошая идея, но это требование моего приложения, если вы знаете, то, пожалуйста, скажите мне…

4. Я никоим образом не собираюсь рекомендовать это, но вы можете использовать методы UIScrollViewDelegate (UITableView является подклассом UIScrollView), чтобы установить для делегата UITableView значение nil и обратно при вызове событий прокрутки.

5. Я имел в виду источник данных, конечно… Установка значения делегата nil приведет к тому, что вы не будете получать вызовы делегата uiscrollview.

Ответ №1:

UITableView реализует отложенную загрузку. Это означает, что ОС загружает только то, что вы видите. Итак, если вы прокручиваете вверх или вниз в табличном представлении, ОС загрузит эти ячейки. Обратите внимание, что ОС перезагружает каждую ячейку при каждом появлении. Это означает, что при создании вашего UITableView будет загружена не каждая ячейка табличного представления, а только видимые. Когда ячейка исчезает после прокрутки и появляется после прокрутки назад, она будет перезагружена снова.