在我正在开发的iPhone应用程序中的不同视图之间进行切换时,我会从更大的视图中添加和删除子视图。我编写的代码适用于iPod 4,iPhone 3,iPad 1,iPad 2以及模拟器。但是,我通过removeFromSuperView调用在iPhone 4上出现了错误的访问错误。我知道这可能是因为我过度发布了一些东西,所以superview不再存在,但是它如何在所有其他设备上运行?
答案 0 :(得分:0)
//尝试执行以下操作 -
if(subview.superview!=nil)
[subview removeFromSuperview];
// --------------------------------------------- -----------------
//如果你有更多的视图,那么检查这样的视图 -
for(UIView * subview in self.view) {
if(subview == view1) {
if(subview.superview!=nil)
[subview removeFromSuperview];
}
else if(subview == view2){
if(subview.superview!=nil)
[subview removeFromSuperview];
}
.
.
.
}