我是IOS平台的新手,在研究了它的工作原理之后,我对如何调用新的类/视图并在按下按钮时覆盖当前视图存有疑问。在android我做:
Intent intent = new Intent(a.class, b.class);
startActivity(intent);
在互联网上搜索,我注意到我必须使用导航栏才能完成。我启动了一个带标签栏控制器的应用程序,并推出了导航控制器。我使用下面的代码:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Storyboard" bundle:nil];
UIViewController *myController = [storyboard instantiateViewControllerWithIdentifier:@"Dicas"];
[self.navigationController pushViewController: myController animated:YES];
并返回: 有一种方法可以覆盖当前视图吗?我总是不得不使用导航栏调用另一个类(使用底部的上层控制器会让我的应用程序难看)?
答案 0 :(得分:0)
隐藏导航栏:
[[self navigationController] setNavigationBarHidden:YES animated:YES];
隐藏标签栏:
yourViewController.hidesBottomBarWhenPushed = YES;
答案 1 :(得分:0)
您还可以使用viewController类的presentViewController函数调用另一个viewController。
[self presentViewController: myController animated:YES completion:nil];
答案 2 :(得分:0)
正如你所说,你想覆盖你当前的视图,所以不确定,但你可以使用这样的模型视图显示你的视图控制器
yourViewController *secView = [[YourViewController alloc] initWithNibName:@"YourViewController" bundle:nil];
[secView setModalPresentationStyle:UIModalPresentationPageSheet];//u can use different UIModalPresentationStyle
[secView setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
[self.navigationController presentViewController:secView animated:YES completion:nil];
上面一个将在现有视图控制器上显示您的视图控制器,一旦出现,您需要设置以关闭此模态视图。
答案 3 :(得分:0)
像这样呈现新类或ViewController的简单方法..
ViewController *view = [self.storyboard instantiateViewControllerWithIdentifier:@"ViewController"];
[self presentViewController:view animated:YES completion:nil];