视图控制器的出栈,入栈(页面切换)
来源:互联网 发布:ppt动画大师知乎 编辑:程序博客网 时间:2024/05/03 20:06
1、导航控制器初始化的时候一般都有一个根视图控制器,导航控制器相当于一个栈,里面装的是视图控制器
2、我们要在栈中新增或者删除一个视图控制器,就需要得到导航控制器,一般在栈中得所有视图控制器都有一个self.navigationController,意思是我的导航控制器,也就是这个视图控制器所在的导航控制器,这样就拿到了导航控制器。
3、栈中新增视图控制器用pushViewController,其实就是push进去一个,这样对于用户而言就是打开一个新界面了。代码如下
- (IBAction)push:(id)sender {
//在storyBoard中拿到视图控制器
UIStoryboard *storyboad = [UIStoryboardstoryboardWithName:@"Main"bundle:[NSBundlemainBundle]];
AViewController *aViewController = [storyboadinstantiateViewControllerWithIdentifier:@"AViewController"];
//导航控制器推送(入栈)
[self.navigationControllerpushViewController:aViewController animated:YES];
}
4、栈中删除一个视图控制器用pop方法,pop方法由多种,代码如下
- (IBAction)pop:(id)sender {
//出栈
//当视图控制器出栈之后,此视图控制器的实例对象死亡,返回上一级视图控制器
//[self.navigationController popViewControllerAnimated:YES];
//返回根视图
//[self.navigationController popToRootViewControllerAnimated:YES];
//返回指定的视图控制器
for (UIViewController*viewControllerin self.navigationController.viewControllers){
//判断此实例对象是否是某个类型(isKindOfClass)
if ([viewController isKindOfClass:[AViewController class]]) {
[self.navigationControllerpopToViewController:viewController animated:YES];
}
}
}
- 视图控制器的出栈,入栈(页面切换)
- 视图控制器的切换
- 视图控制器之间的切换
- 视图控制器切换的方式
- 多个视图控制器的视图切换
- UIViewController的切换(视图控制器切换)
- IOS视图控制器左边缘右滑pop出栈
- pop到没有入栈的控制器
- 导航控制器实现视图的分层切换
- IOS 视图控制器间的切换
- 导航控制器 控制视图间的切换
- UIViewController(视图控制器)下的View切换
- tabbar视图控制器之间的切换
- (四)顺序栈的入栈和出栈
- UINavigationController视图控制器切换(一)
- UINavigationController视图控制器切换(二)
- UINavigationController视图控制器切换(一)
- swift uinavigationController 视图控制器切换(二)
- Linux上使用git
- altium designer 09 中常用快捷键
- nginx-rtmp-module和simple-rtmp-server搭建
- 面向对象和面向过程的区别以及优缺点
- altium designer 09 原理图库建立
- 视图控制器的出栈,入栈(页面切换)
- Java 之Date类
- Java---实力弹弹球,弹弹弹
- altium designer 09 制版
- 设置低电平有效,即取反
- CentOS安装配置cmake
- IOS基础-UINAVIGATIONCONTROLLER-不写代码实现分层显示
- altium designer 9 中的常见的英文单词
- 机器学习:你需要多少训练数据?