iPhone: Должен ли я (и как) выпустить подпредставления для настраиваемой ячейки табличного представления? - PullRequest
1 голос
/ 18 февраля 2010

У меня есть пользовательские TableViewCell-ы, в которых я назначаю несколько UIImageView-ов и UILabel-ов для представления содержимого ячейки, например:

[cell.contentView addSubview:iconFileView];
[iconFileView release];
[cell.contentView addSubview:areaLabel];
[areaLabel release];
[cell.contentView addSubview:placeLabel];
[placeLabel release];

Как я понимаю, сами ячейки сохраняются в TableView и будут освобождаться вместе с ним. Однако я не понимаю, нужно ли мне удалять подпредставления представления контента ячейки из представления контента, чтобы их можно было освободить?

Если ответ положительный: как я могу это сделать? Достаточно ли найти все видимые ячейки и удалить их подпредставления из каждой ячейки?

Ни один из них не смог найти точного ответа на этот вопрос в Руководстве по управлению памятью для какао.

Спасибо!

1 Ответ

2 голосов
/ 18 февраля 2010

contentView позаботится о выпуске своих подпредставлений, когда ячейка выпустит contentView. По сути, когда количество сохраняемых ячеек становится равным нулю, оно отправляет сообщение о выпуске в contentView. Если счет сохранения содержимого viewView равен нулю, он будет отправлять сообщения о выпуске всем своим подпредставлениям, включая iconFileView и т. Д. Если вы не отправляли никаких дополнительных сообщений сохранения в contentView или iconFileView и т. Д., Все будет в порядке. *

Если вы хотите чувствовать себя действительно хорошо, запустите вашу программу в разделе «Утечки в инструментах». Убедитесь, что вы делаете все, что нужно, чтобы освободить UITableViewCells.

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