#import "RootViewController.h"
@interface RootViewController ()<UIScrollViewDelegate>
{
UIScrollView *_scrollView;
UIPageControl *_pageCtl;//页码
}
@end
@implementation RootViewController
- (void)viewDidLoad {
[super viewDidLoad];
_scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 20, self.view.frame.size.width, 200)];
//设置滚动区域
_scrollView.contentSize = CGSizeMake(self.view.frame.size.width * 4, 200);
//分页滚动
_scrollView.pagingEnabled = YES;
_scrollView.delegate = self;
[self.view addSubview:_scrollView];
for (NSInteger i = 0; i < 4; i++) {
//广告图片
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(i * self.view.frame.size.width, 0, _scrollView.frame.size.width, _scrollView.frame.size.height)];
imageView.image = [UIImage imageNamed:[NSString stringWithFormat:@"%ld.jpg",i + 1]];
[_scrollView addSubview:imageView];
}
//分页控件
_pageCtl = [[UIPageControl alloc] initWithFrame:CGRectMake(0, 200, self.view.frame.size.width, 20)];
_pageCtl.backgroundColor = [UIColor lightGrayColor];
//设置总页数
_pageCtl.numberOfPages = 4;
[_pageCtl addTarget:self action:@selector(pageAction:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:_pageCtl];
//设置当前页码颜色
_pageCtl.currentPageIndicatorTintColor = [UIColor greenColor];
//其他页码颜色
_pageCtl.pageIndicatorTintColor = [UIColor redColor];
_pageCtl.alpha = 0.8;
}
-(void)pageAction:(UIPageControl *)pageCtl{
//同步UIScrollView
NSLog(@"%ld",pageCtl.currentPage);
//设置偏移量(带动画)
[_scrollView setContentOffset: CGPointMake(self.view.frame.size.width * pageCtl.currentPage, 0) animated:YES];
}
#pragma mark- UIScrollViewDelegate
//停止减速
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
//设置页码
_pageCtl.currentPage = scrollView.contentOffset.x/self.view.frame.size.width;
}
主要属性设置
//初始化ScrollView,设定位置
self.scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 460)];
self.scrollView.backgroundColor = [UIColor greenColor];
//设置显示内容的大小,这里表示可以下滑十倍原高度
self.scrollView.contentSize = CGSizeMake(320, 460*10);
//设置当滚动到边缘继续滚时是否像橡皮经一样弹回
self.scrollView.bounces = YES;
//设置滚动条指示器的类型,默认是白边界上的黑色滚动条
self.scrollView.indicatorStyle = UIScrollViewIndicatorStyleDefault;//还有UIScrollViewIndicatorStyleBlack、UIScrollViewIndicatorStyleWhite
//设置是否只允许横向或纵向(YES)滚动,默认允许双向
// self.scrollView.directionalLockEnabled = YES;
//设置是否采用分页的方式
// self.scrollView.pagingEnabled = YES;
//设置是否允许滚动
// self.scrollView.scrollEnabled = NO;
//设置是否可以缩放
self.scrollView.maximumZoomScale = 2.0;//最多放大到两倍
self.scrollView.minimumZoomScale = 0.5;//最多缩小到0.5倍
//设置是否允许缩放超出倍数限制,超出后弹回
self.scrollView.bouncesZoom = YES;
//设置委托
self.scrollView.delegate = self;
[self.view addSubview:self.scrollView];










网友评论