我有一个UIView [self],有两个客户UIViews [articalBottomPanel] [movingSharePanel]
每个客户视图都在一个类中声明
第一个视图[articalBottomPanel]委托将被设置为自我
第二种观点也将采用[self.artical],[self]
如下:
[self.articalBottomPanel setDelegate:self];
[self.articalBottomPanel.btnCommment addTarget:self action:@selector(commentBtnPressed:) forControlEvents:UIControlEventTouchUpInside];
[self.movingSharePanel setArtical:self.artical];
[self.movingSharePanel setParentView:self];
我的dealloc是
- (void)dealloc
{
NSLog(@"ArticalViewController : dealloc");
[movingSharePanel_ release];
[articalBottomPanel_ release];
[super dealloc];
}
问题是:当我弹出视图[self] dealloc时没有调用?!
问题是:在弹出这个视图[self]之前, 它是否想要比delloc发布更多的版本?!
答案 0 :(得分:1)
你是否以@property(保留)作为委托?如果是,则将其指定。如果没有,请确保您的ViewController已发布。检查推后是否松开。
答案 1 :(得分:1)
retainCount
没用。不要打电话。
具体来说,对象的绝对保留计数是一个不相关的实现细节,通常应该被忽略(仅当您还拥有每个保留/释放的确切库存时才有用,但如果您有,则保留计数不是也没用。)
See this answer有关如何准确追踪仍然保留对象的人/内容的精彩解释。