我在我的一个视图控制器的loadView:方法中遇到了一些代码问题.基本上我有一个视图,它在一个更大的视图中(在iPad上),并有一些标签,按钮和图标,以编程方式加载到它.
当视图控制器调用dealloc方法并尝试释放时,会发生此问题.我得到了一个- [CALayer发布]:发送到解除分配的实例错误的消息,应用程序崩溃了.
从阅读有关此错误的内容来看,我似乎过度发布了一些内容,但我认为不是这样的:下面的代码是麻烦制造者,我已经尝试了对所有内容的自动释放和手动释放调用,以及根本不释放它们(我知道,我知道,这很糟糕)但它继续造成havok.
container = [[UIView alloc] initWithFrame:CGRectNull];
container.autoresizingMask = ( UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin );
container.frame = CGRectMake( (viewSize.width-320)/2, (viewSize.height-480)/2, 320, 480);
[self.view addSubview:container];
UILabel *welcomeTo = [[[UILabel alloc] initWithFrame:CGRectNull] autorelease];
welcomeTo.backgroundColor = [UIColor clearColor];
welcomeTo.font = [UIFont fontWithName:@"HelveticaNeue-Light" size:18.0];
welcomeTo.frame = CGRectMake(23, 15, 103, 24);
welcomeTo.shadowColor = [UIColor blackColor];
welcomeTo.shadowOffset = CGSizeMake( 0, 1 );
welcomeTo.text = @"Welcome to";
welcomeTo.textAlignment = UITextAlignmentLeft;
welcomeTo.textColor = [UIColor colorWithWhite:1.0 alpha:0.6];
[container addSubview:welcomeTo];
UILabel …Run Code Online (Sandbox Code Playgroud)