iPhone,方法返回+1保留计数的客观c对象
我有点理解为什么我得到这个分析器警告。因为我使用的是正在传入的对象。我试过autorelease
和retain
但是这些会导致我遇到其他问题,如unrecognized selector sent to instance
。iPhone,方法返回+1保留计数的客观c对象
我的CommonUI功能的目的是重新使用代码,但我不得不迎合addSubView
和presentModalViewController
。
也许我在做一些明显的错误?
这里有两个问题。
首先,如果您拨打[vc release]
(如其他答案所示),那么您肯定会使分析仪很高兴,但可能会导致应用程序崩溃。视图控制器的视图不保留控制器,因此视图中的任何按钮目标都将指向垃圾。
只要它在屏幕上显示,您将需要保持HelpViewController
保持不变。 “父”视图控制器应该可能以某种方式保留它。你可以autorelease它,并返回它。然后,无论谁拨打showHelpClick...
都会保留返回的控制器。
其次,您不需要将(UIViewController *)vc
作为参数传入。
更改您这样的代码:
HelpViewController *helpvc = [[HelpViewController alloc] init....];
[vw addSubview:helpvc.view];
[helpcv release];
我觉得你并不需要通过其他的VC。
这会崩溃的应用程序如果从HelpViewController视图的子视图的任何事件都有HelpViewController作为它们的目标。 – Jason 2010-11-30 14:52:41
需要看你的HelpViewController的initWithNibName:包:的onpage:方法的代码请 – 2010-11-29 11:01:43
希望你不介意,但我已经改善你的代码缩进有点 – JeremyP 2010-11-29 11:44:57