Основные данные: обновление таблицы при переключении вкладок в панели вкладок - PullRequest
0 голосов
/ 29 июля 2011

Я использую основные данные для панели вкладок + приложения-прототипа контроллера навигации с одной сущностью: Event.

Итак, у меня есть две вкладки: прошлое и настоящее.Я использую nsfetchedresultscontroller и nspredicate, чтобы отфильтровать данные в соответствующие таблицы.

Теперь у меня возникла проблема, когда я создаю новую дату, она отображается в представлении текущей таблицы следующим образомЯ ожидаю, но с течением времени событие остается там после даты и никогда не перемещается в прошлое таблицы.Единственный способ добиться этого - просто запустить приложение с нуля, убив фоновое представление.

Я попытался установить reloadData, и в представлении появится вызов таблицы.Это не работает

Я пытался использовать [tableview reloadData], когда приложение запускается также из фона.но это тоже не работает.

Я не могу думать ни о чем другом, надеюсь, что вы, ребята, могли бы помочь.

[Редактировать]

Я только что понял, как это сделать!Я попытался загрузить пример кода, который, как мне казалось, я загрузил на github, но, похоже, там нет файла.Я не могу понять, как загрузить проект туда.

В любом случае, что нужно сделать, чтобы добиться этого, так это появиться в виде, просто поместите весь запрос на выборку, который находится в контроллере полученных результатов (безизвлекаются переменные контроллера результатов) с предикатом.теперь, если вы переключаете представления, все данные обновляются и фильтруются!

Надеюсь, что это поможет кому-нибудь еще найти решение этой проблемы.

1 Ответ

0 голосов
/ 29 июля 2011

Хм, если вы уже попробовали перезагрузить данные, могут возникнуть следующие проблемы:

  • убедитесь, что кеш соответствует предикату.Если в контроллере таблицы вы используете кеш, а таблица заполнена чем-то вроде entityDate = myCalculatedDate, то предикат может отличаться, и вам сначала нужно удалить кеш.Я думаю, вы могли бы попытаться установить cache:nil, чтобы увидеть, если это проблема.
  • для обновления таблицы, особенно с новыми вставленными строками или перемещением строк в другой индекс, вам нужно реализовать делегированный контроллер контроллера
  • [EDIT] также, если я хорошо помню, я не уверен, работает ли стандартный механизм viewWillAppear/dissappear с Tab Tab, как и ожидалось, возможно, есть какой-то делегат для реализации, но это всего лишь предположение!

это то, что я могу догадаться, не видя код.

...