Alloc - добавить в качестве accessoryView - релиз: это утечка? - PullRequest
1 голос
/ 27 сентября 2011

Это утечка памяти? Этот код выполняется в cellForRowAtIndexPath: вне блока создания ячейки (поэтому каждый раз, когда ячейка таблицы обновляется).

MyView *myView = [[MyView alloc] init];
// ... configuration code
cell.accessoryView = myView;
[myView release];

Или, другими словами, UITableViewCell освободит объект в его accessoryView, когда ему будет назначен новый объект?

Спасибо.

Ответы [ 2 ]

2 голосов
/ 27 сентября 2011

Да, ячейка освободит вспомогательный вид, и в этом примере утечки нет.

1 голос
/ 27 сентября 2011

Свойство accessoryView типа UITableViewCell является типом retain, общим со многими свойствами вида в наборе.Проверьте документацию Apple на UITableViewCell, чтобы убедиться в этом.Поэтому в вашем примере утечки не будет - счетчик сохранений был правильно настроен.Вы также правильно отпустили после настройки вспомогательного вида из-за вашего alloc вызова.

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