Боится утечки памяти при использовании метода addubiew в iOS - PullRequest
0 голосов
/ 13 октября 2011

в iPhone: когда я добавляю подпредставление к представлению, использование [myview addubview: anotherview.view] сохранит «мое представление» в памяти, что может вызвать проблему при добавлении большого количества представлений в качестве подпредставлений.

Ответы [ 2 ]

1 голос
/ 13 октября 2011

Да addSubView сохраняет добавленные вами подвиды, и да, если вы добавляете слишком много подвидов, вы можете столкнуться с проблемами с памятью, но это очень маловероятно, если это произойдет, вы получите

- (void)didReceiveMemoryWarning

Далее:

- (void)viewWillUnload

и затем:

- (void)viewDidUnload

Это разгрузит ваше представление и освободит его подпредставления. Однако не забудьте установить для дополнительных подпунктов значение nil в методе viewDidUnload, поскольку эти подпредставления также сохраняются самим ViewController, поэтому они не будут освобождены при выгрузке представления, если вы не установите их в значение nil.

1 голос
/ 13 октября 2011

в вашем примере myview сохранит anotherview.view (view.view? ..).Однако myview не будет сохранено, пока вы не добавите его как подпредставление в другое представление или не сохраните его любым другим способом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...