#define HEIGHT self.view.frame.size.heightatom
#define WIDTH self.view.frame.size.widthorm
@interface ViewController : UIViewController<UIScrollViewDelegate>three
@property (strong,nonatomic) UIScrollView *myScorolV;ci
@property (strong,nonatomic) UIPageControl *pageC;string
@property (strong,nonatomic) NSMutableArray *arrPage;it
@property (strong,nonatomic) UIImageView *threeImage;table
@property (strong,nonatomic) UIImageView *secondImage;ast
@property (strong,nonatomic) UIImageView *firstImage;object
@property (assign,nonatomic) int currentPage; 分頁
@end
//滾動視圖建立
self.myScorolV = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, WIDTH, HEIGHT)];
self.myScorolV.contentSize = CGSizeMake(WIDTH * 3, 0);
self.myScorolV.pagingEnabled = YES;
self.myScorolV.showsHorizontalScrollIndicator = NO;
self.myScorolV.delegate = self;
[self.view addSubview:self.myScorolV];
//分頁視圖
self.pageC = [[UIPageControl alloc] initWithFrame:CGRectMake(WIDTH / 5 * 2, HEIGHT - 80, WIDTH / 5, 40)];
self.pageC.backgroundColor = [UIColor clearColor];
self.pageC.currentPage = 0;
self.pageC.numberOfPages = 5;
//指定頁碼顏色
self.pageC.currentPageIndicatorTintColor = [UIColor redColor];
self.pageC.pageIndicatorTintColor = [UIColor greenColor];
[self.view addSubview:self.pageC];
self.arrPage = [NSMutableArray arrayWithCapacity:10];
for (int i = 1; i < 6; i++)
{
UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"%d.png",i]];
[self.arrPage addObject:image];
}
self.firstImage = [[UIImageView alloc] init];
self.secondImage = [[UIImageView alloc] init];
self.threeImage = [[UIImageView alloc] init];
self.currentPage = 0;
[self relodeImage];
}
-(void)relodeImage
{
if (self.currentPage == 0)
{
self.firstImage.image = [self.arrPage lastObject];
self.secondImage.image = [self.arrPage objectAtIndex:self.currentPage];
self.threeImage.image = [self.arrPage objectAtIndex:self.currentPage + 1];
}
else if (self.currentPage == self.arrPage.count - 1)
{
self.firstImage.image = [self.arrPage objectAtIndex:self.currentPage - 1];
self.secondImage.image = [self.arrPage objectAtIndex:self.currentPage];
self.threeImage.image = [self.arrPage objectAtIndex:0];
}
else
{
self.firstImage.image = [self.arrPage objectAtIndex:self.currentPage - 1];
self.secondImage.image = [self.arrPage objectAtIndex:self.currentPage];
self.threeImage.image = [self.arrPage objectAtIndex:self.currentPage + 1];
}
self.firstImage.frame = CGRectMake(0, 0, WIDTH, HEIGHT);
self.secondImage.frame = CGRectMake(WIDTH, 0, WIDTH, HEIGHT);
self.threeImage.frame = CGRectMake(WIDTH * 2, 0, WIDTH, HEIGHT);
[self.myScorolV addSubview:self.firstImage];
[self.myScorolV addSubview:self.secondImage];
[self.myScorolV addSubview:self.threeImage];
self.myScorolV.contentOffset = CGPointMake(WIDTH, 0);
}
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
int number = (int)self.myScorolV.contentOffset.x;
if (number < 0 || number == 0)
{
if (self.currentPage == 0)
{
self.currentPage = (int)(self.arrPage.count - 1);
}
else
{
self.currentPage--;
}
}
else if (number > WIDTH * 2 || number == WIDTH * 2)
{
if (self.currentPage == (int)self.arrPage.count - 1)
{
self.currentPage = 0;
}
else
{
self.currentPage++;
}
}
self.pageC.currentPage = self.currentPage;
[self relodeImage];
}