iOS - removeFromSuperview删除太多视图

时间:2011-03-28 03:21:53

标签: iphone cocoa-touch ios4 uiview

在我的应用程序中,我有我的MainWindow,View1和View2。

View1通过MainWindow中的按钮加载,View2通过View1中的UITableView加载。

所以我致电[self.window addSubview:View1]然后[self.view addSubview:View2]

当我用[self.view removeFromSuperview]关闭View2时,由于某种原因,我最终回到MainWindow而不是View1。

关于最新情况的任何想法?

2 个答案:

答案 0 :(得分:2)

您需要确保self.view指向“View2”。这取决于您呼叫[self.view removeFromSuperview]的位置。

如果您没有在View2的控制器内部调用,那么这可能适用于您引用它的任何其他位置:

[View2 removeFromSuperview];

答案 1 :(得分:2)

您的[self.view removeFromSuperview]实际上正在删除self.view处的内容,而不是您添加的最后一个子视图。

您应该使用[view2 removeFromSuperview]代替。