- 效果圖:
實現(xiàn):
//設置三個視圖控制器
-(void)setUpAllChildViewController{
SocietyVC *sVc = [[SocietyVC alloc]init];
sVc.title = @"社會";
[self addChildViewController:sVc];
//剩余兩個寫法一樣 就不寫了
}
//設置三個按鈕的標題 三個按鈕是放在一個大的View里面的
-(void)setUpButtonTitle{
NSUInteger count = self.textView.subViews.count;
for(int i = 0;i < count; i ++){
UIButton *btn = self.textView.subViews[i];
UIViewController * vc = self.childViewControllers[i];
[btn setTitle:vc.title forState:UIControlStateNormal];
}
}
-(void)showVc{
//點擊按鈕顯示子控制器
//三個按鈕的點擊事件都是同一個事件 用tag值進行區(qū)分
UIView *view;
//contentView是模仿UITabBarController用一個View去存放視圖控制器
//contentView的尺寸是三個按鈕的容器視圖底部到屏幕底部填充滿
if(self.contentView.subViews.count){
view = self.contentView.subViews[0];
}
//tag:0 1 2
UIViewController *vc = self.childViewControllers[sender.tag];
vc.view.frame = self.contentView.bounds;
[self.contentView addSubview:vc.view];
//點擊下一個按鈕顯示新的視圖控制器時先舷,移除上一個
[view removeFromSuperView];
}