![](/img/trans.png)
[英]Release allocated objects(Method retains objective-c object with +1 retain count)
[英]iPhone, method returns an objective-c object with a +1 retain count
我有點理解為什么收到此分析儀警告。 因為我使用的是傳入的對象,所以嘗試了autorelease
並retain
這些內容,但是這導致了其他問題,例如unrecognized selector sent to instance
。
我的CommonUI函數的目的是重用代碼,但是我必須迎合addSubView
和presentModalViewController
。
也許我在做一些明顯的錯誤?
像這樣更改代碼:
HelpViewController *helpvc = [[HelpViewController alloc] init....];
[vw addSubview:helpvc.view];
[helpcv release];
我認為您不需要通過其他VC。
這里有兩個問題。
首先,如果您調用[vc release]
(如其他答案所示),則可以使分析儀滿意,但可能會使應用程序崩潰。 視圖控制器的視圖不會保留該控制器,因此視圖中的任何按鈕目標都將指向垃圾。
您需要以某種方式將HelpViewController
保留到屏幕上。 “父”視圖控制器可能應該以某種方式保留它。 您可以自動釋放它,然后將其返回。 然后,調用showHelpClick...
任何人都將保留返回的控制器。
其次,您不需要傳遞(UIViewController *)vc
作為參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.