Странная утечка памяти в приложении для iPad - PullRequest
0 голосов
/ 28 января 2011

У меня действительно странная утечка памяти в приложении iPad.

У меня есть приложение Navigation Controller. Нажав кнопку на главном контроллере, я нажимаю ViewController, этот контроллер просмотра имеет UIWebView.который подключается к файлу NIB с помощью IBOutlet.

@interface MyViewController : UIViewController {

     IBOutlet UIWebView *webview; 
}

И в веб-представлении, когда пользователь прикасается к нему, он начинает воспроизводить видео на YouTube.

Теперь, когда я нажимаю кнопку возврата, открывается окноконтроллер возвращается.

Здесь возникает проблема, видео не перестает воспроизводиться, и причина в том, что экземпляр UIWebView все еще существует, для этого я проверил его счет сохранения в методе dealloc, и он показывает 2, но он долженбыл 1. Я вообще не сохранил его в своем коде.

А вот и странные вещи, просто для тестирования я назвал release для объекта, и на этот раз видео перестало воспроизводиться.

Я знаю, что это неправильно, но нет ответов на вопрос, почему так происходит.

Любые комментарии о том, где я иду не так.

Спасибо

1 Ответ

0 голосов
/ 30 января 2011

Следует учитывать два момента:

  1. Как распределяется и освобождается MyViewController?Когда вы нажимаете viewcontroller, он будет сохранен еще раз.На самом деле вы можете освободить его в этот момент в коде.

  2. Перед подключением MyViewController попытайтесь установить для делегата webview значение nil.

...