уничтожить вид при нажатии кнопки назад - PullRequest
0 голосов
/ 01 декабря 2010

Мой навигационный контроллер организован следующим образом:

FirstViewController -> SecondViewController -> ThirdViewController

Сначала я выполняю поиск в Интернете и отображаю результат в UITableView. когда я выбираю ячейку, я нажимаю на «Второй», где я выполняю другой поиск на основе ранее нажатой клавиши, и я отображаю некоторую информацию и кнопку для «дополнительной информации» когда я нажимаю кнопку, я нажимаю на третий вид, и это прекрасно работает ...

Проблема в том, что когда я дважды нажимаю кнопку «Назад» для выполнения другого поиска: когда я прихожу в третий вид, я каждый раз отображаю информацию о первом поиске!

это потому, что я делаю отображение информации в loadView, и это вызывается только в первый раз, верно?

Как мне поступить?

спасибо!

Ответы [ 2 ]

0 голосов
/ 01 декабря 2010

Действительно viewDidShow называется после того, как представление было загружено и создано из файла NIB .Это означает, что вы должны использовать этот метод только для выполнения инициализации.

Добавьте новый метод и вызывайте его каждый раз, когда у вас будут новые результаты:

- (void) updateAndShowResults
{
    // Code to update third view goes here
    // and is always called whenever some new results are available
}

Вы будете вызывать его с первого илиКонтроллер второго вида выглядит так:

[thirdView updateAndShowResults];

Надеюсь, это поможет.Пожалуйста, отметьте лучший ответ, нажав «√» слева!Спасибо.

0 голосов
/ 01 декабря 2010

Вы можете очистить ThirdViewController в viewdidunload.

...