iOS 仿照今日頭條 實現的滾動表格 XLSlideSwitch
阿新 • • 發佈:2019-01-04
一、實現效果
二、原理說明
上面標題部分是通過UICollectionView實現的;
下面滾動部分是通過UIPageViewController實現的;
三、程式碼說明
1、建立方法
-(void)buildUI { //初始化要顯示的Viewcontroller NSMutableArray *viewControllers = [NSMutableArray new]; NSArray *titles = @[@"今天",@"是個",@"好日子",@"心想的",@"事兒",@"都能成",@"明天",@"是個",@"好日子",@"打開了家門",@"咱迎春風",@"~~~"]; for (int i = 0 ; i<titles.count; i++) { TestViewController *vc = [TestViewController new]; vc.title = titles[i]; [viewControllers addObject:vc]; } _slideSwitch = [[XLSlideSwitch alloc] initWithFrame:CGRectMake(0, 64, self.view.bounds.size.width, self.view.bounds.size.height - 64)]; _slideSwitch.delegate = self; //設定按鈕選中顏色 _slideSwitch.btnSelectedColor = RGB(212, 61, 61); //設定按鈕正常顏色 _slideSwitch.btnNormalColor = RGB(34, 34, 34); //設定要顯示的檢視控制器 _slideSwitch.viewControllers = viewControllers; //新增到父檢視 [self.view addSubview:_slideSwitch]; }
2、代理方法
//當選中某一個tab時呼叫,可以通過viewcontroller的viewWillAppear方法進行資料重新整理等操作
-(void)slideSwitchDidselectTab:(NSUInteger)index
{
UIViewController * vc = _slideSwitch.viewControllers[index];
[vc viewWillAppear:YES];
}