NavigationViewController с WebView-содержащим View Controller - PullRequest
0 голосов
/ 01 сентября 2011

У меня проблема с контроллером навигации.

Во-первых, есть контроллер навигации.

Кроме того, существует контроллер представления, содержащий веб-контроллер, означающий, что контроллер веб-просмотра загруженвнутри WEBcontroller.m

Я сделал так, что когда загружается WEBcontroller, он автоматически загружает google.com.Функция находится в -viewDidLoad ()

Сначала, когда приложение запускается, навигационное представление загружает WEBcontroller.m, затем WEBcontroller загружает google.com, как и предполагалось.

Затем, когда я нажимаю любуюссылка на google.com, навигационное представление выдвигает новое представление с помощью [self.navController pushViewController: newWebController animated: YES];[newWebController gotoUrl: [request.URL absoluteString]];

Это, конечно, работает.Недавно загруженный (и alloc) WEBController.m загружает gmail.com, вызывая функцию "gotoUrl".

И я нажимаю другие ссылки, чтобы перейти "gmail.com/help"

Итак,google.com -> gmail.com -> gmail.com/help

Затем я закрываю приложение и играю в некоторые игры ... на iPhone освобождается память.

Запуск приложенияснова отображается веб-страница «gmail.com/help».Затем я нажимаю кнопку [Назад], которая находится на панели навигации, которая вызывает [popViewController].

Затем контроллер навигации правильно возвращается к предыдущему WEBController.m, на котором отображалась страница "gmail.com".

НО !!существует проблема.Поскольку память была 'dealloc' для iPhone, WEBController снова загружен страницей "google.com", а не страницей "gmail.com".

Я искал эту проблему, но не смог получить какую-либо.

Спасибо большое за чтение и интерес к моей проблеме.

1 Ответ

0 голосов
/ 01 сентября 2011

Я в замешательстве. Вы используете UIWebView? Если так, почему бы вам просто не позволить ему обрабатывать ссылки / навигацию? Почему вы создаете (и продвигаете) новый UIWebView для каждого клика по ссылке? Технически говоря, контроллер представления должен иметь возможность обрабатывать освобождение и восстановление из памяти IOS. Это делается в viewDidLoad и viewDidUnload. Но я не думаю, что это то, что вы хотите / нужно здесь.

...