【问题标题】: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;
}

【问题讨论】:

    标签: ios uiview


    【解决方案1】:

    你有指向这些视图的类指针吗?我可能认为它们没有被保存下来。

    【讨论】:

    • 我正在使用 IB 并为此视图创建了一个 Outlet!我需要使用框架再次创建视图吗?
    • 不,他的意思是你可能不会释放视图本身,因为视图仍然有指向它的指针。
    猜你喜欢
    • 2015-11-23
    • 1970-01-01
    • 2011-10-26
    • 1970-01-01
    • 2012-04-27
    • 2012-03-15
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    相关资源
    最近更新 更多