WKCPageViewController滑动条控制器

原理

1.滚动条自定义视图.
2.相应的控制器UIPageViewController.

使用

1.引入库
pod 'WKCPageViewController'
#import <WKCPageViewController.h>

  1. 初始化控制器
- (WKCPageViewController *)pageController
{
if (!_pageController) {
_pageController = [[WKCPageViewController alloc] init];
_pageController.delegate = self;
_pageController.dataSurce = self;
_pageController.selectionListHeight = 100; //滑动条高度
//        _pageController.selectionListBackgroundColor = UIColor.yellowColor; //滑动条背景色
_pageController.selectionListInserts = UIEdgeInsetsMake(0, 20, 0, 20); //滑动条嵌入量
_pageController.selectionListSpacing = 15; //滑动条item间距
_pageController.selectionListItemSize = CGSizeMake(100, 100); //滑动条item大小
_pageController.controllerSpacing = 5; //控制器间距
[_pageController setCurrentIndex:2 animated:YES]; //初始坐标
}
return _pageController;
}
  1. 添加到当前控制器.
[self addChildViewController:self.pageController];
[self.view addSubview:self.pageController.view];
  1. 代理回调
// 总个数
- (NSInteger)numberOfItems
{
return 5;
}

// 滑动条普通状态视图
- (UIView *)WKCPageViewController:(WKCPageViewController *)controller selectionListViewAtIndex:(NSInteger)index
{
UIView *view = [UIView new];
view.backgroundColor = UIColor.yellowColor;
return view;
}

// 滑动条选中状态视图
- (UIView *)WKCPageViewController:(WKCPageViewController *)controller selectionListSelectedViewAtSelectedIndex:(NSInteger)selectedIndex
{
UIView *view = [UIView new];
view.backgroundColor = UIColor.redColor;
return view;
}

// 建相应的控制器
- (UIViewController *)WKCPageViewController:(WKCPageViewController *)controller viewControllerAtIndex:(NSInteger)index
{
UIViewController *vc = [[UIViewController alloc] init];
if (index == 0) {
vc.view.backgroundColor = UIColor.blueColor;
}else if (index == 1) {
vc.view.backgroundColor = UIColor.brownColor;
}else if (index == 2) {
vc.view.backgroundColor = UIColor.redColor;
}else if (index == 3) {
vc.view.backgroundColor = UIColor.greenColor;
}else if (index == 4) {
vc.view.backgroundColor = UIColor.yellowColor;
}
return vc;
}

// 坐标变化时回调
- (void)WKCPageViewController:(WKCPageViewController *)controller currentIndexChanged:(NSInteger)index
{
NSLog(@"当前坐标: %ld",index);
}

如上,就已设置完成.界面及滑动条的初始化和赋值再各自操作即可.


展示图.gif

如有bug或问题,请私信.github地址.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,033评论 3 119
  • 从小,看电影,我总是不厌其烦问爸妈,这个人是好人还是坏人?那个时候,我的世界很单纯,像那个时候的电影,只有黑白两种...
    zique阅读 205评论 1 2
  • 2018年2月15日 星期四 晴 除夕,往年都是噼里啪啦,今年安静的很。今晚大家终于可以安...
    周李扬阅读 216评论 0 0
  • 进程和线程 进程进程是指系统中正在运行的一个应用程序。每个进程是独立的,拥有自己独立的资源。 线程进程是用来执行任...
    eightzg阅读 438评论 0 3