可以集成不同的控制器进行左右滑动,给控制器设置标题实现左右联动的效果
关于ViewPager:
- 可以自定义
title
按钮的样式,如果不设置默认黑色字体,选中红色字体 - 可以在
title
上添加自定义的视图,并自定义视图的高度 - 根据
tilte
的内容和屏幕的宽度自动设置frame
确保填充整个屏幕的宽度,当title
的总宽度超出屏幕时会实现滚动效果
- 打开
LSYViewPagerVC
项目导入LSYViewPagerVC.h
与LSYViewPagerVC.m
即可
- 导入头文件
LSYViewPagerVC.h
- 当前要实现的控制器继承
LSYViewPagerVC
#import "LSYViewPagerVC.h"
@interface ViewController : LSYViewPagerVC
@end
- 给当前的控制器设置代理方法
- (void)viewDidLoad {
[super viewDidLoad];
self.delegate = self;
self.dataSource = self;
}
###代理方法实现
-(NSInteger)numberOfViewControllersInViewPager:(LSYViewPagerVC *)viewPager
{
//返回要实现滚动效果的控制器数量
}
-(__kindof UIViewController *)viewPager:(LSYViewPagerVC *)viewPager indexOfViewControllers:(NSInteger)index
{
//返回每个位置下的控制器
}
-(UIView *)headerViewForInViewPager:(LSYViewPagerVC *)viewPager
{
//返回自定义的头部视图,不实现该代理方法则默认没有头部视图
}
-(CGFloat)heightForHeaderOfViewPager:(LSYViewPagerVC *)viewPager
{
//返回头部视图的高度
}
-(CGFloat)heightForTitleOfViewPager:(LSYViewPagerVC *)viewPager
{
//返回控制器显示title的高度
}
-(NSString *)viewPager:(LSYViewPagerVC *)viewPager titleWithIndexOfViewControllers:(NSInteger)index
{
//返回每一个控制器title的内容
}
-(UIButton *)viewPager:(LSYViewPagerVC *)viewPager titleButtonStyle:(NSInteger)index
{
//设置控制器标题按钮的样式,如果不设置将使用默认的样式,选择为红色,不选中为黑色带有选中下划线
}