实现界面切换有两种方式:spa
经过两个UIView来切换,可是这个方法只是用于只有两个界面的时候3d
经过viewController来切换,推荐使用这个方法,主要介绍这两个方法code
!!!!经过两个viewController来切换界面orm
- (void)changeViewWithViewController{animation
//1.初始化视图控制器it
_recommmandController = [[RecommandViewController alloc]init];io
_subscribeController = [[SubscribeViewController alloc]init];class
//2.将一个视图控制器显示到另外一个上cli
//a.将须要被显示的视图控制器做为这个视图控制器的子视图控制器select
[self addChildViewController:_recommmandController];
[self addChildViewController:_subscribeController];
//b.将推荐和订阅的视图控制器的view显示在当前控制器的view(条漫)上
[self.view addSubview:_recommmandController.view];
//设置订阅视图控制器的view的frame
_subscribeController.view.center = CGPointMake(-self.view.center.x, self.view.center.y);
[self.view addSubview:_subscribeController.view];
}
!!!!当分段被点击时,给分段添加一个方法
#pragma mark - 分段选择器被点击
- (void)segmentOnclicked:(YTSegmentControl *) segment{
if (segment.selectedSegmentIndex == 0) {
//订阅被点击
[UIView animateWithDuration:0.4f animations:^{
//订阅显示在屏幕上
_subscribeController.view.center = self.view.center;
//推荐显示在屏幕外
_recommmandController.view.center = CGPointMake(self.view.frame.size.width * 1.5, self.view.center.y);
}];
}else{
//推荐被点击
[UIView animateWithDuration:0.4f animations:^{
//推荐页面显示在屏幕上
_recommmandController.view.center = self.view.center;
//订阅页面显示在屏幕外
_subscribeController.view.center = CGPointMake(-self.view.center.x, self.view.center.y);
}];
}
}
!!!!!这样就实现了两个页面的切换!!!!!