//
// ViewController.m
// 图片轮播
//
// Created by apple on 16/4/20.
// Copyright © 2016年 cuijw. All rights reserved.
//
import “ViewController.h”
define SEECRE_SIZE self.view.bounds.size
@interface ViewController ()
{
int _currentImageIndex;
}
@property (nonatomic,strong)UIScrollView * scrollView;
@property (nonatomic,strong)UIPageControl * pageControl;
@property (nonatomic,copy)NSArray * arr;
@property (nonatomic,strong)UIImageView * leftImageView;
@property (nonatomic,strong)UIImageView * rightImageView;
@property (nonatomic,strong)UIImageView * centerImageView;
@end
@implementation ViewController
(void)viewDidLoad {
[super viewDidLoad];// Do any additional setup after loading the view, typically from a nib.
/**- 加载数据源
*/
_arr= @[@”1.jpg”,@”2.jpg”,@”3.jpg”,@”4.jpg”,@”5.jpg”,@”6.jpg”,@”7.jpg”,@”8.jpg”];
/**
初始化滚动视图
*/
self.scrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 25, SEECRE_SIZE.width, SEECRE_SIZE.width*1.5)];
self.scrollView.delegate = self;
// 设置按页显示
self.scrollView.pagingEnabled = YES;
self.scrollView.showsHorizontalScrollIndicator = NO;
self.scrollView.contentSize = CGSizeMake(SEECRE_SIZE.width*3, 0);
// 设置偏移量
self.scrollView.contentOffset=CGPointMake(SEECRE_SIZE.width, 0);
[self.view addSubview:self.scrollView];
/**
初始化左侧视图
*/
self.leftImageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, SEECRE_SIZE.width, SEECRE_SIZE.width*1.5)];
[self.scrollView addSubview:self.leftImageView];
/**
初始化中间视图
*/
self.centerImageView = [[UIImageView alloc]initWithFrame:CGRectMake(SEECRE_SIZE.width*2, 0, SEECRE_SIZE.width, SEECRE_SIZE.width*1.5)];
[self.scrollView addSubview:self.centerImageView];
/**
初始化右侧视图
*/
self.rightImageView = [[UIImageView alloc]initWithFrame:CGRectMake(SEECRE_SIZE.width, 0, SEECRE_SIZE.width, SEECRE_SIZE.width*1.5)];
[self.scrollView addSubview:self.rightImageView];
/**- 设置图片
*/
self.leftImageView.image = [UIImage imageNamed:_arr[_arr.count-1]];
self.centerImageView.image=[UIImage imageNamed:_arr[0]];
self.centerImageView.image =[UIImage imageNamed:_arr[1]];
_currentImageIndex = 0;
/**
初始化小圆点
*/
self.pageControl = [[UIPageControl alloc]init];
self.pageControl.frame = CGRectMake(100, SEECRE_SIZE.height-80, 200, 44);
[self.view addSubview:self.pageControl];
self.pageControl.numberOfPages = _arr.count;
self.pageControl.currentPage = _currentImageIndex;
self.pageControl.pageIndicatorTintColor = [UIColor magentaColor];
self.pageControl.currentPageIndicatorTintColor = [UIColor blueColor];- 加载数据源
}
/**
* 拖动停止后
*
* @param scrollView
*/
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
/**
* 声明2个下标
*/
int leftImageIndex,rightImageIndex;
CGPoint offset = [self.scrollView contentOffset];
if (offset.x>SEECRE_SIZE.width) {
_currentImageIndex=(_currentImageIndex+1)%_arr.count;
}
else if (offset.x<SEECRE_SIZE.width)
{
_currentImageIndex=(_currentImageIndex+_arr.count-1)%((int)_arr.count);
}
_centerImageView.image=[UIImage imageNamed:_arr[_currentImageIndex]];
leftImageIndex=(_currentImageIndex+_arr.count-1)%((int)_arr.count);
rightImageIndex=(_currentImageIndex+1)%((int)_arr.count);
_leftImageView.image=[UIImage imageNamed:_arr[leftImageIndex]];
_rightImageView.image=[UIImage imageNamed:_arr[rightImageIndex]];
self.scrollView.contentOffset=CGPointMake(SEECRE_SIZE.width, 0);
self.pageControl.currentPage = _currentImageIndex;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end