uinavigationcontroller обновляет предыдущий вид при возврате назад - PullRequest
1 голос
/ 31 мая 2011

У меня есть UINavigationController, и я перехожу с уровня 1 на уровень 2, где я выбираю строку / элемент; и затем я возвращаюсь, используя кнопку «назад» - НО - на моем уровне 1 я отображал выбор по умолчанию (который я изменил, перейдя на Уровень 2 и выбрав что-то еще) - и мой уровень 1 не меняется вообще, поэтому я предполагаю, что viewDidLoad больше не вызывается ... как заставить его перезагрузить?

Большое спасибо

Приветствие * 1005 ГБ *

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

EDIT2: на самом деле, это не сработало, значит, я скопировал весь код (на самом деле я его переместил) из didLoad в viewWillAppear - это было правильно? или должен был попытаться обновить мой nsmutablearray в нужном месте? Благодарю. Приветствия

edit 3: фактически, добавив несколько флагов / сообщений в мой код, чтобы понять, что происходит, хотя viewWillAppear вызывается при повторном отображении, видимые ячейки не «перекрашиваются / обновляются». таким образом, если я прокручиваю вниз, затем вверх, волшебным образом изменения работают и появляются, НО я бы хотел, чтобы это произошло с самого начала. Любая идея, пожалуйста, помогите. спасибо

Ответы [ 3 ]

3 голосов
/ 31 мая 2011

-viewDidLoad вызывается только один раз за время существования UIViewController. Он вызывается сразу после запроса представления контроллера представления, например, путем доступа к его свойству view. Поэтому в вашем случае вы хотите поместить свой код перезагрузки в -viewWillAppear:. Этот метод вызывается каждый раз, когда отображается представление вашего контроллера представления.

1 голос
/ 31 мая 2011

Вы можете поместить свой код обновления в метод -viewWillAppear: контроллера

0 голосов
/ 27 апреля 2012

Но -viewWillAppear не вызывается в ios 4.3, он вызывается в ios 5.0 и выше

...