iOS addChildViewController方法
来源:互联网 发布:小学生上网数据 编辑:程序博客网 时间:2024/05/01 16:41
单独使用 addSubview 去加viewController的view发现有许多问题,主要是使用了代理方法的。查了下发现问题所在。
苹果新的API增加了addChildViewController方法,并且希望我们在使用addSubview时,同时调用[self addChildViewController:child]方法将sub view对应的viewController也加到当前ViewController的管理中。
对于那些当前暂时不需要显示的subview,只通过addChildViewController把subViewController加进去;需要显示时再调用transitionFromViewController方法。将其添加进入底层的ViewController中。
//点击切换页面
- (void)didClick:(UIButton *)button
{
// 点击处于当前页面的按钮,直接跳出
其他页面
[self replaceController:self.currentVC newController:self.firstVC];
}
// 切换各个标签内容
- (void)replaceController:(UIViewController )oldController newController:(UIViewController )newController
{
/**
* 着重介绍一下它
* transitionFromViewController:toViewController:duration:options:animations:completion:
* fromViewController 当前显示在父视图控制器中的子视图控制器
* toViewController 将要显示的姿势图控制器
* duration 动画时间(这个属性,old friend 了 O(∩_∩)O)
* options 动画效果(渐变,从下往上等等,具体查看API)
* animations 转换过程中得动画
* completion 转换完成
*/
[self addChildViewController:newController]; [self transitionFromViewController:oldController toViewController:newController duration:2.0 options:UIViewAnimationOptionTransitionCrossDissolve animations:nil completion:^(BOOL finished) { if (finished) { //移除oldController,但在removeFromParentViewController:方法前不会调用willMoveToParentViewController:nil 方法,所以需要显示调用 [newController didMoveToParentViewController:self]; [oldController willMoveToParentViewController:nil]; [oldController removeFromParentViewController]; self.currentVC = newController; }else{ self.currentVC = oldController; } }];
}
- IOS addChildViewController方法学习
- iOS addChildViewController方法
- iOS addChildViewController方法
- iOS addChildViewController方法
- IOS addChildViewController方法使用及注意事项
- IOS addChildViewController方法使用及注意事项
- ios addChildViewController
- addChildViewController方法
- [IOS笔记] - addChildViewController
- iOS addChildViewController 详解
- [IOS笔记] - addChildViewController
- iOS addChildViewController 详解
- iOS addChildViewController 使用
- iOS addChildViewController用法
- iOS addChildViewController 后拖拽失败
- addChildViewController等方法
- 控制器的 addChildViewController 方法
- addChildViewController等方法
- 放置街灯(UVA 10859)
- 噩梦射手(SurvivalShooter)教程(一)
- JSON与JAVA数据的转换-JSONObject.fromObject(map)
- MyBatis Generator自动创建代码
- face aging 调研
- iOS addChildViewController方法
- python爬虫小试
- maven工程-pom文件
- 《深入理解Java虚拟机——JVM高级特性与最佳实践》学习笔记——虚拟机类加载机制
- node包管理工具-----npm
- Jmeter查看结果树响应结果unicode转成中文显示
- Java开发岗位面试题归类
- 设计模式——观察者模式(Observer)
- Linux基础知识和常用命令(三)