Cowboy Tech

iOS项目6.UIScrollView图片自动滚动

效果图

效果图

功能分析

功能分析

定义常量的两种方式

//屏幕高度
#define kScreenHeight [UIScreen mainScreen].bounds.size.height
//屏幕宽度
#define kScreenWidth [UIScreen mainScreen].bounds.size.width
//图像数量
CGFloat kImgCount = 10;
//Y轴坐标
CGFloat scrollY = 20;
//页面控制器宽度
CGFloat pageCtrlWidth = 200;

UIScrollView的配置

//配置滚动视图的可见区域 -- 延伸出屏幕外的
self.scrollView.contentSize = CGSizeMake(kScreenWidth * kImgCount, kScreenHeight - scrollY);


//配置滚动视图可以页面显示
self.scrollView.pagingEnabled = YES;


//在滚动视图中实现图像偏移
[self.scrollView setContentOffset:point animated:YES];


//滚动视图滚动之后
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{

}

//当视图将要拖动的时候
- (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView{

}

//当视图停止拖拽的时候
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{
}

添加视图 - 插入

[self.view insertSubview:self.pageCtrl aboveSubview:self.scrollView];

定时器添加和停止

//创建定时器来调用翻页方法
self.timer = [NSTimer scheduledTimerWithTimeInterval:2.0
                                              target:self
                                            selector:@selector(nextPage)
                                            userInfo:nil
                                             repeats:YES];

//停止定时器
[self.timer invalidate];

循环调用

[[NSRunLoop currentRunLoop]addTimer:self.timer forMode:NSRunLoopCommonModes];