我目前使用时没有任何问题:
-(IBAction)products:(id)sender {
products = [[Products alloc] initWithNibName:@"Products" bundle:nil];
[self.view addSubview:products.view];
}
我将此操作绑定到按钮以更改我的观看次数。我确定这不正确,因为视图正在叠加?我的应用程序会因此而崩溃吗?知道通过IBAction切换视图的任何好示例代码吗?
答案 0 :(得分:4)
如果要添加覆盖整个超级视图的子视图,可以考虑在添加新视图之前删除现有子视图。您可以通过标记视图&然后删除它们。
添加视图时,请为其指定标记 -
products.view.tag = 1; //any number you want
[self.view addSubview:products.view];
要删除较旧的视图,请将其删除。删除它 -
UIView* subview = [self.view viewWithTag:1]; //Use the same number
[subview removeFromSuperview];
//now add a new view
HTH,
阿克沙伊
答案 1 :(得分:0)
我发布的代码here提供了一种使用IBAction加载另一个视图的方法。虽然没有过渡动画......
答案 2 :(得分:0)
添加多个视图会使您的应用程序变慢但不会崩溃..
您可以从superview中删除所有可以解决所有问题的视图
希望它有效..