一张图片分页显示
- (void)viewDidLoad {
[super viewDidLoad];
//1.初始化scrollview
_scrollView=[[UIScrollView alloc]initWithFrame:self.view.bounds];
//2. 要添加的图像
//2.1 不写@2x,系统会自动变为低分辨率的图
UIImage *image=[UIImage imageNamed:@"keke01"];
UIImageView *imageview=[[UIImageView alloc]initWithImage:image];
[_scrollView addSubview:imageview];
//3.属性设置
//3.1.取消水平条
[_scrollView setContentSize:image.size];
[_scrollView setShowsHorizontalScrollIndicator:NO];
//3.2.取消弹跳
[_scrollView setBounces:NO];
//4. 加上分页效果
[_scrollView setPagingEnabled:YES];
//5. 添加到整个view中
[self.view addSubview:_scrollView];
//6.设置代理
[_scrollView setDelegate:self];
//7.1 增加分页控制器
_pageControl=[[UIPageControl alloc]init];
//7.1.1位置+大小
//大小
[_pageControl setBounds:CGRectMake(0, 0, 150, 50)];
//位置(小点点)
[_pageControl setCenter:(CGPointMake(self.view.bounds.size.width/2, self.view.bounds.size.height-100))];
[_pageControl setNumberOfPages:2];
[_pageControl setCurrentPage:0];
//当前选中页面标示
[_pageControl setCurrentPageIndicatorTintColor:[UIColor redColor]];
//未选页面标示
[_pageControl setPageIndicatorTintColor:[UIColor blackColor]];
[_pageControl addTarget:self action:@selector(updatePageChange:) forControlEvents:UIControlEventValueChanged];
// 添加到整个view中
[self.view addSubview:_scrollView];
[self.view addSubview:_pageControl];
}
-(void)updatePageChange:(UIPageControl *)pageController
{
CGFloat offsetX=pageController.currentPage*_scrollView.bounds.size.width;
[_scrollView setContentOffset:CGPointMake(offsetX, 0) animated:YES];
}
//完成减速,意味着成功切换
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
//设施pageccontrol的页数
NSInteger pageNo = scrollView.contentOffset.x / scrollView.bounds.size.width;
[_pageControl setCurrentPage:pageNo];
}
多张图片分页:将图片链接到一起,变成一张大图
- (void)viewDidLoad {
[super viewDidLoad];
//实力化scrollview
_scrollView=[[UIScrollView alloc]initWithFrame:self.view.bounds];
CGFloat width=_scrollView.bounds.size.width;
CGFloat height=_scrollView.bounds.size.height;
//添加图片
for (NSInteger i=0; i<5; i++)
{
NSString *imageFile=[NSString stringWithFormat:@"%d.jpg",i+1];
UIImage *image=[UIImage imageNamed:imageFile];
UIImageView *imageView=[[UIImageView alloc]initWithImage:image];
//imageView放置位置
[imageView setFrame:CGRectMake(width*i, 0, width, height)];
[_scrollView addSubview:imageView];
}
//设置属性
CGSize size=CGSizeMake(5*width, height);
[_scrollView setContentSize:size];
[_scrollView setShowsHorizontalScrollIndicator:NO];
[_scrollView setBounces:NO];
[_scrollView setPagingEnabled:YES];
[self.view addSubview:_scrollView];
//设置代理
[_scrollView setDelegate:self];
//添加pageControl
_pageControl=[[UIPageControl alloc]init];
//设置pageControl
[_pageControl setBounds:CGRectMake(0, 0, 150, 50)];
[_pageControl setCenter:CGPointMake(self.view.bounds.size.width/2, self.view.bounds.size.height-100)];
[_pageControl setNumberOfPages:5];
[_pageControl setCurrentPage:0];
[_pageControl setCurrentPageIndicatorTintColor:[UIColor redColor]];
[_pageControl setPageIndicatorTintColor:[UIColor blackColor]];
// 方法
[_pageControl addTarget:self action:@selector(updatePageChange:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:_scrollView];
[self.view addSubview:_pageControl];
}
#pragma mark scrollview代理方法
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
NSInteger pageNo=_scrollView.contentOffset.x/_scrollView.bounds.size.width;
[_pageControl setCurrentPage:pageNo];
}
-(void)updatePageChange:(UIPageControl*)pageController
{
CGFloat offsetX=pageController.currentPage*_scrollView.bounds.size.width;
[_scrollView setContentOffset:CGPointMake(offsetX, 0) animated:YES];
}