Я думаю, здесь есть некоторая путаница. UIView
s не выталкиваются и не выталкиваются из стека UINavigationController
. То, что выдвигается и выталкивается, это UIViewControllers
, который, в свою очередь, обрабатывает один или (чаще) несколько просмотров каждый.
К счастью, UIViewController
имеет следующие методы:
-(void) viewWillAppear:(BOOL)animated;
-(void) viewDidAppear:(BOOL)animated;
-(void) viewWillDisappear:(BOOL)animated;
-(void) viewDidDisappear:(BOOL)animated;
Они вызываются всякий раз, когда представление должно появиться (dis) или только что (dis) появилось. Я работаю с панелями вкладок, модальными видами и контроллерами навигации. (И это хорошая идея использовать их при реализации пользовательских контроллеров.)
Так что в вашем случае, если я правильно понимаю, вы просто должны переопределить метод viewWillAppear
: или viewDidAppear
: в том, что вы называете «родительской страницей» (которая, предположительно, обрабатывается UIViewController
) и введите код, чтобы обновить внешний вид страницы, чтобы отразить только что введенные данные.
(Если я правильно помню, вы должны убедиться, что UINavigationController
получает сообщение viewWill/DidAppear:
при первом его отображении, чтобы эти сообщения позднее были отправлены его дочерним контроллерам. Если вы настроили это с помощью шаблон или IB, вам, вероятно, не о чем беспокоиться.)