У меня проблема с использованием UIWebViews, я видел тот же вопрос здесь, но не было никакого полезного ответа.вопрос здесь: управление памятью UIWebView .Я процитирую это:
Я занимаюсь разработкой приложения, которое интенсивно использует UIWebView.Это приложение генерирует динамически много UIWebViews при загрузке контента с моего сервера.Некоторые из этих UIWebViews довольно большие и содержат много изображений.
Если я использую инструменты для обнаружения утечек, я их не обнаруживаю.Однако выделяется много объектов, и я подозреваю, что это имеет отношение к UIWebViews.
Когда веб-просмотры выпускаются, потому что больше не нужны, кажется, что освобождается не вся память.Я имею в виду, что после запроса к моему серверу приложение создает UITableView и множество веб-просмотров (инструменты говорят о 8Mb).Когда пользователь нажимает назад, все они освобождаются, но использование памяти уменьшается только на 2-3 Мб, и через 5-10 минут использования приложения происходит сбой.
Я создал простое тестовое приложение и имеюте же результаты.
Это табличное представление, я создаю DetailsView следующим образом:
DetailsVC *detailViewController = [[DetailsVC alloc] initWithNibName:@"DetailsVC" bundle:nil];
detailViewController.n = indexPath.row;
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViewController release];
в DetailsVC У меня есть веб-представление, созданное в IB.Я загружаю HTML следующим образом:
NSString *urlAddress;
if (self.n == 0)
{
urlAddress = @"http://www.google.com";
}
else
{
urlAddress = @"http://www.yahoo.com";
}
NSURL *url = [NSURL URLWithString:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[self.webView loadRequest:requestObj];
Я также делаю:
- (void)viewDidUnload {
self.webView = nil;
}
Вот так, каждый раз, когда я выбираю любой веб-вид в RootViewController, я теряю 2-3 Мб памяти,Есть ли решение этой проблемы?
Спасибо.