63. Pull-to-refresh feature падает приложение


#1

Всем доброго времени суток. Столкнулся с такой проблемой: Во время обновления вью падает приложение, причем падает не каждый раз - только когда потянуть вниз глубоко, выдает такую ошибку: index out of range


Курс #2 : PopularTableViewController : fatal error: Index out of range
#2

Проверьте количество элементов во всех заполняемых полях

У меня была аналогичная проблема, когда я выводил количество строк по массиву с большим количеством элементов, чем прочие. В итоге, к примеру, при i = 10 он стучался в 10-ый элемент массив, где всего 8 элементов и приложение падало

В общем проверьте правильность заполнения данных в массивы и считайте количество ячеек по тому, что заполняется в последнюю очередь


#3

Спасибо за совет. Обязательно попробую.


#4

Забыл добавить: Я загружаю данные из iCloud


#5

Не думаю, что дело в этом

Но как вариант можно еще проверить, что запись в массив происходит корректно


#6

Обнаружил причину ошибки. Если в методе, который загружает данные из iCloud обнулить массив (cloudPlaces = [ ] ) чтобы данные не дублировались - то возникает ошибка. Если этого не делать, то ошибки не будет. Но как же тогда избавиться от дублирования записей?


#7

А вы массив расширяете или перезаписываете?


#8

#9

Я перезаписываю массив. Во время рефреша подгружаются данные из icloud и я его обнуляю чтобы не дублировать старые.


#10

Может просто сделать временный массив, все записывать в него, а потом уже в обжуленный?


#11

Вот на что икскод просит обратить внимание


#12

Index Out Of Range - вы явно пытаетесь обратиться к элементу массива, которого не существует.

Проверьте алгоритм обращения к массивам