Мой текущий набор вверх следующий:поведение IOS UITableView нарушается, когда не активен
Root Tab Bar: вид
- Коллекция с журналами
- Bookmarks (с учетом таблицы)
- Другие
Вы можете добавить закладку из журнала в виде коллекции, а также удалить ее оттуда.
Поведение, которое я вижу, следующее: Я запускаю приложение, представление таблицы запрашивает количество разделов, количество ячеек, но не cellForRowAtIndexPath. Я мог понять, почему, поскольку в активном представлении нет ячейки, поэтому данные не должны загружаться.
Когда я добавляю закладку из представления коллекции, она добавляет ее в массив (через уведомление) и запрашивает перезагрузку таблицы. Поскольку исходная запись отсутствует, она проходит через описанные выше движения. Когда я снова нажимаю его, чтобы удалить закладку, запись удаляется из массива. Здесь он становится интересным, потому что первое, что вызывает таблица, - это не количество разделов или строк, а cellForRowAtIndexPath. Поскольку массив пуст, приложение вылетает из запроса данных по индексу 0.
Мой вопрос: почему создание ячейки вызывается в этом порядке? Есть ли способ избежать этого?
трудно сказать, не видя никакого кода. Вы вызываете '[mytableview reloadData]' после обновления массива? – Oren
Да. Вот что я имел в виду под «запросами перезагрузки таблицы». Отредактировано описание, чтобы упомянуть, что обновление выполняется с помощью NSNotification. –