我对这里发生的事情感到有点困惑。简单来说,我将UILabel添加到UIButton。发生了动画,因此需要嵌套。
我在按钮所在的容器上调用“removeFromSuperview”(并且固有地,标签位于其中)但我总是最终得到内存错误并最终崩溃。
那就是说,如果我评论标签的创建和放置 - 我根本没有问题。在这种情况下,我是否需要做一些事情来释放孩子(标签)?我尝试在主容器上从superview释放所有子视图,但标签再次嵌套在按钮视图中。
谢谢!
以下代码:
/* Button Creation */
UIButton *butt = [[UIButton alloc] initWithFrame:CGRectMake(navLeft-200, navTop, buttonsize, navHeight-20)];
[butt setBackgroundColor:[UIColor clearColor]];
[butt setTag:navSection];
[butt addTarget:controller action:@selector(loadSectionFromNav:) forControlEvents:UIControlEventTouchUpInside];
[overlayView addSubview:butt];
/* Label Creation */
UILabel *lbl = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, butt.frame.size.width, butt.frame.size.height)];
[lbl setText:[NSString stringWithFormat:@" %@", navItem]];
[lbl setAlpha:0.0f];
/* Adding the label to the button */
[butt addSubview:lbl];