最近的項目由于項目需要,涉及過多次在目前控制器上添加另一個控制器的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);