关于在视图控制器上添加另一个控制器的View的问题
2016-05-22 11:24
337 查看
最近的项目由于项目需要,涉及过多次在当前控制器上添加另一个控制器的View问题。这里做个笔记,为了方便,当前视图控制器记为控制器1,添加的视图记为控制器2
1.首先,因为控制器2的视图上有需要与用户交互的需求,所以一定要设置2为1的子控制器
ViewController *vc2 = [[ViewController alloc]init];
[self addChildViewController:vc2];
ps:当有多个子视图时还可能用到,子控制器的removeFromParentViewController方法
2.关于2的view的创建
因为view的创建涉及到2的viewdidload方法,所以在控制器1的方法里面不要再重新创建vc2的view,不然创建的是另一个对象。在这里只需要根据需要设计vc2的view的frame就可以了。如下:
vc2.view.frame = CGRectMake(0, 108, kScreenWidth, kScreenHeight-108);
1.首先,因为控制器2的视图上有需要与用户交互的需求,所以一定要设置2为1的子控制器
ViewController *vc2 = [[ViewController alloc]init];
[self addChildViewController:vc2];
ps:当有多个子视图时还可能用到,子控制器的removeFromParentViewController方法
2.关于2的view的创建
因为view的创建涉及到2的viewdidload方法,所以在控制器1的方法里面不要再重新创建vc2的view,不然创建的是另一个对象。在这里只需要根据需要设计vc2的view的frame就可以了。如下:
vc2.view.frame = CGRectMake(0, 108, kScreenWidth, kScreenHeight-108);
相关文章推荐
- 78. Counting Bits
- BSOJ: 2697 -- 【ZJOI2010】数字计数
- 教你如何剖析源码(转)
- java 页面错误转发提示页面 errorPage转跳报HTTP500内部服务器错误
- poj 3368 Frequent values 线段树
- Icinga2在centos7上安装流程
- POJ-2096 Collecting Bugs【概率dp】
- 二项式展开推广与微积分的关系
- 一个Laravel队列引发的报警
- Android下基于PCM的音频渲染
- Visual Studio 使用技巧, 功能与特性
- Delphi项目构成之单元文件PAS
- C#第八次上机
- OJ平台汇总
- Shell脚本学习笔记-运行控制
- DHCP源码分析-报文解析和封装
- HDU 4819 二维线段树
- 专题三 · 1018
- java命令行运行带外部jar
- Git入门简介