在发布UIView对象时,我的应用程序崩溃了

时间:2012-05-26 09:12:35

标签: iphone uiview

我开发了一个没有XIB文件的iPhone项目。在那里我手动创建了UIView对象以及该视图上的一些其他组件。我在deallocviewDidUnload方法中发布了这些对象。我的问题是,如果我发布UIView对象,应用程序崩溃,我不知道为什么。任何人都可以帮我解决这个问题吗?

这是我的代码:

allmessengersview = [[UIView alloc] initWithFrame: [[UIScreen mainScreen] bounds]]; 
allmessengersview.backgroundColor = [UIColor whiteColor];
self.view = allmessengersview;

-(void) dealloc { 
    [allmessengersview release]; 
    [super dealloc]; 
} 

- (void) viewDidUnload { 
    [super viewDidUnload];
    [allmessengersview release]; 
    allmessengersview = nil;
 }

2 个答案:

答案 0 :(得分:0)

请在视图初始化中写下此代码

allmessengersview=[[UIView alloc]init];
allmessengersview.frame = CGRect (0,0,320,480);
allmessengersview.backgroundColor = [UIColor whiteColor]; 
[self.view addsubView: allmessengersview];

请在Dealloc Methods中写下此代码

-(void)dealloc 
{
    [allmessengersview release]; 
    [super dealloc];
}

答案 1 :(得分:0)

不要在viewDidUnload中释放。 这样,应用程序将在viewDidUnload中释放allmessengersview,稍后它会尝试在dealloc中第二次释放它,但由于它已经发布,应用程序崩溃。