iPhone, метод возвращает объект target-c с счетом сохранения +1 - PullRequest
1 голос
/ 29 ноября 2010

Я вроде понимаю, почему я получаю это предупреждение анализатора.Поскольку я использую объект, который передается внутрь. Я пробовал autorelease и retain, однако это вызывает у меня другие проблемы, такие как unrecognized selector sent to instance.

Цель моей функции CommonUI состоит в том, чтобы повторно-использовать код, но я должен обслужить addSubView и presentModalViewController.

Возможно, я делаю какую-то очевидную ошибку?

alt text

Ответы [ 2 ]

2 голосов
/ 29 ноября 2010

Измените свой код следующим образом:

HelpViewController *helpvc = [[HelpViewController alloc] init....];
[vw addSubview:helpvc.view];
[helpcv release];

Я думаю, вам не нужно пропускать другой ВК.

1 голос
/ 29 ноября 2010

Здесь есть две проблемы.

Во-первых, если вы позвоните [vc release] (как предлагают другие ответы), вы, несомненно, порадуете анализатор, но, скорее всего, вылетит приложение.Представление контроллера представления не сохраняет контроллер, поэтому любые целевые кнопки в представлении будут указывать на мусор.

Вам нужно будет каким-то образом сохранить HelpViewController, пока он отображается на экране,«Родительский» контроллер представления, скорее всего, должен каким-то образом его сохранить.Вы можете автоматически выпустить его и вернуть.Тогда тот, кто вызовет showHelpClick..., сохранит возвращенный контроллер.

Во-вторых, вам не нужно передавать (UIViewController *)vc в качестве аргумента.

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