2013-04-12 2 views
0

У меня есть приложение, которое использует раскадровку. Я перехожу от «главного контроллера представления» к другим, используя стандартные сегменты, и я отклоняю другие viewControllers с помощью rejectViewController. (обратите внимание, что они в основном отображаются в виде листа).UIViewController viewDidAppear после увольнения?

Вещь, когда она возвращается к главному контроллеру представления, мне нужно выполнить некоторую очистку (очистить массивы, перезагрузить таблицу и т. Д.). Как мне это сделать, поскольку я не могу использовать viewDidLoad или viewDidAppear?

+1

Итак, почему вы не можете использовать viewDidAppear? – gavdotnet

+0

Да, не знаю, почему вы не можете использовать 'viewDidAppear', но, возможно, вы можете использовать' - (void) viewDidDisappear: (BOOL) animated' в представлении, из которого вы пришли, вместо этого? – Fonix

+0

viewDidAppear не вызывается, когда я возвращаюсь с листа формы. Не знаю почему, но это не так. Думайте, что контроллер просмотра всегда отображается на листах форм. Я мог бы использовать viewDidDisappear, но опять же, не думайте, что он будет вызываться при формировании листов. – Seerex

ответ

0

Я думаю, что лучшим решением является добавление блока (например, closeActionBlock) для вашего представленного контроллера и вызов этого блока при скрытии контроллера. (Как это реализовать, вы можете видеть в Objective-C Block Property with Xcode code completion)

+0

это вам помогло? –

Смежные вопросы