博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PageControl(弹性滚动)
阅读量:6368 次
发布时间:2019-06-23

本文共 1762 字,大约阅读时间需要 5 分钟。

使用网上源码KYAnimatedPageControl

    self.pageControl = [[KYAnimatedPageControl alloc]initWithFrame:CGRectMake(CGRectGetWidth(self.view.bounds)/
2-
50, CGRectGetHeight(self.view.bounds) - 
100
100
50)];
    self.pageControl.pageCount = 
4;
//
数量
    self.pageControl.unSelectedColor = [UIColor colorWithWhite:
0.9 alpha:
1];
//
未滑动的颜色
    self.pageControl.selectedColor = [UIColor redColor];
//
滑动的颜色
    self.pageControl.bindScrollView = _scrollView; 
//
需要绑定
    self.pageControl.shouldShowProgressLine = YES;
//
填充,小球之前的线条变色
    self.pageControl.indicatorStyle = IndicatorStyleGooeyCircle;
//
样式
    self.pageControl.indicatorSize = 
15
//
圆圈大小
    self.pageControl.swipeEnable = YES;
//
这有啥用
    [self.pageControl display];
//
设置完所有参数调用
    
    [self.view addSubview:self.pageControl];
    
    self.pageControl.didSelectIndexBlock = ^(NSInteger index){
        NSLog(
@"
Did Selected index : %ld
",(
long)index);
    };

 

 UIScrollViewDelegate:

#pragma mark - <UIScrollViewDelegate>
-(
void)scrollViewDidScroll:(UIScrollView *)scrollView{
    
    
//
Indicator动画
    [self.pageControl.indicator animateIndicatorWithScrollView:scrollView andIndicator:self.pageControl];
    
    
if (scrollView.dragging || scrollView.isDecelerating || scrollView.tracking) {
        
//
背景线条动画
        [self.pageControl.pageControlLine animateSelectedLineWithScrollView:scrollView];
    }
    
}
-(
void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
    
    self.pageControl.indicator.lastContentOffset = scrollView.contentOffset.x;
    
}
-(
void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView{
    
    
    [self.pageControl.indicator restoreAnimation:@(
1.0/self.pageControl.pageCount)];
    
}
- (
void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{
    self.pageControl.indicator.lastContentOffset = scrollView.contentOffset.x;
}

 

demo下载地址:

效果图:

 

转载于:https://www.cnblogs.com/hxwj/p/4599653.html

你可能感兴趣的文章
十倍交叉验证 10-fold cross-validation
查看>>
Windows无法删除文件 提示找不到该项目怎么办
查看>>
js 数组
查看>>
R语言中的字符串处理函数
查看>>
平方和公式
查看>>
【Unity游戏开发】浅谈 NGUI 中的 UIRoot、UIPanel、UICamera 组件
查看>>
内存模型
查看>>
table边框设置
查看>>
IOS开发之实现App消息推送(最新)
查看>>
C++ 资源管理之 RAII
查看>>
UVA11234 Expressions
查看>>
博文参考:Java编程中“为了性能”尽量要做到的一些地方
查看>>
【JAVASCRIPT】jquery实现ajax无刷新评论
查看>>
flex---->MXML语法
查看>>
OpenCV学习笔记(30)KAZE 算法原理与源码分析(四)KAZE特征的性能分析与比较...
查看>>
linux内核模块编译
查看>>
【数据存储】操作资源文件
查看>>
数字信号处理之低通滤波器设计
查看>>
Learning Cocos2d-x for WP8(3)——文字篇
查看>>
转 AngularJS 2.0将面向移动应用并放弃旧浏览器
查看>>