删除视图并添加另一个视图
Posted
技术标签:
【中文标题】删除视图并添加另一个视图【英文标题】:remove view and add another view 【发布时间】:2013-11-07 18:11:41 【问题描述】:我的 ViewController 中有两个视图,我控制视图有我用按钮显示。当用户点击button1时,它隐藏viewA并显示viewB,当用户点击button2时,它隐藏viewB并显示viewA。但是在我使用 removeFromSuperView 删除 viewA 后,当我再次单击添加时,它不会显示。
发生了什么?
- (IBAction)btnViewB:(id)sender
NSLog(@"remove viewA");
[viewA removeFromSuperview];
[self.view addSubview:viewB];
- (IBAction)btnViewA:(id)sender
NSLog(@"remove viewB");
[viewB removeFromSuperview];
[self.view addSubview:viewA];
我解决了这个问题,但我想知道为什么如果我使用 removeFromSuperView 它不起作用
- (IBAction)btnViewB:(id)sender
viewA.hidden = YES;
viewB.hidden = NO;
- (IBAction)btnViewA:(id)sender
viewA.hidden = NO;
viewB.hidden = YES;
【问题讨论】:
【参考方案1】:你有指向这些视图的类指针吗?我可能认为它们没有被保存下来。
【讨论】:
我正在使用 IB 并为此视图创建了一个 Outlet!我需要使用框架再次创建视图吗? 不,他的意思是你可能不会释放视图本身,因为视图仍然有指向它的指针。以上是关于删除视图并添加另一个视图的主要内容,如果未能解决你的问题,请参考以下文章