-Using圆弧
-I有5个独立的视图控制器,它们都是我创建的一个名为"UIViewControllerWithLoadingView“的类的子类化,它是UIViewController的子类化。
像这样分配和释放属性:-In我分配的子类和超类:
@property (strong, nonatomic) NSURLConnection *urlConnection;
- (void)viewDidUnload
{
[super viewDidUnload];
self.urlConnection=nil;
}-Now当调用didReceiveMemoryWarning时,子类viewDidUnload方法运行良好。如果我在超类UIViewControllerWithLoadingView中将属性设置为nil,应用程序将崩溃。尤其是在我将子类的属性设置为nil的情况下。因此,目前我只是不在超类中将属性设置为nil,这会变得有问题,因为活动字节在运行时会不断堆积。
发布于 2012-07-24 22:07:23
问题出在超类中,我有一个扩展uiview的视图,它有一个对视图控制器的属性引用。dealloc是在弧中自动调用的,因此dealloc实际上会将视图控制器本身设置为零,从而导致崩溃。一旦我在自定义视图类中删除了视图控制器的属性,问题就不再出现了
发布于 2012-07-23 22:00:50
经验法则是,“清理”的方法--如dealloc或viewDidUnload--应该在完成所有其他操作后调用super。(以及“设置”的方法--比如init--首先调用super。)如果没有看到所有的子类实现,我不知道这是否是您的问题所在,但这将是一个开始。
https://stackoverflow.com/questions/11612466
复制相似问题