属性
内容区域contentSize
@property(nonatomic) CGSize contentSize;
偏移量contentOffset
@property(nonatomic) CGPoint contentOffset;
弹簧效果bounces
@property(nonatomic) BOOL bounces;
分页效果pagingEnabled
@property(nonatomic,getter=isPagingEnabled) BOOL pagingEnabled;
允许滑动视图本身,如果设为no只能通过方法滑动,不能直接用手滑动
@property(nonatomic,getter=isScrollEnabled) BOOL scrollEnabled;
显示水平进度条showsHorizontalScrollIndicator
@property(nonatomic) BOOL showsHorizontalScrollIndicator;
显示垂直进度条showsVerticalScrollIndicator
@property(nonatomic) BOOL showsVerticalScrollIndicator;
放大和缩小的倍数
@property(nonatomic) CGFloat minimumZoomScale;
@property(nonatomic) CGFloat maximumZoomScale;
1缩放到某个区域,(具体出现的区域受缩放倍数的影响)
- (void)zoomToRect:(CGRect)rect animated:(BOOL)animated;
2种通过代码滑动视图的方法,一个是设置偏移量,一个是滑动到某个区域(常用第一个)
- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated;
- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated;
滚动视图的基本使用
演示UIScrollView滚动试图基本使用
UIImageView *imageView=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 11000, 5600)];
imageView.image=[UIImage imageNamed:@”1001.jpg”];
[self.view addSubview:imageView];
使用滚动试图
声明一个滚动试图
UIScrollView *scrollView=[[UIScrollView alloc]initWithFrame:self.view.bounds];
[self.view addSubview:scrollView];
imageView放到了滚动试图中
[scrollView addSubview:imageView];
滚动试图比较特殊,有两个大小。本身大小,其中内容大小
scrollView.contentSize=CGSizeMake(11000, 5600);
滚动试图常用属性
是否显示水平或竖直滚动条。
水平,横向
scrollView.showsHorizontalScrollIndicator=NO;
竖直,纵向
scrollView.showsVerticalScrollIndicator=NO;
设置分页滚动
scrollView.pagingEnabled=YES;
设置是否可以拉出空白区域,bounces蹦跳 scrollView.bounces=YES;
滚动视图的基本原理 + 滚动视图的事件处理
滚动试图缩放和基本原理UIScrollViewDelegate
scrollView.delegate=self;
开始拖拽
滚动。。。。。
结束拖拽
开始减速
滚动。。。。。
减速结束(滚动停止);
【UIScrollViewDelegate】
代理方法
滑动过程中
- (void)scrollViewDidScroll:(UIScrollView *)scrollView;
开始拖动 - (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView;
停止拖动 - (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate;
开始滑动 - (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView;
停止滑动 - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView;
滚动视图的缩放
设置最大最小缩放比例
通过代理方法,告诉滚动试图,哪个试图应该缩放
scrollView.maximumZoomScale=10;
scrollView.minimumZoomScale=0.1;
代理方法,告诉scrollView哪个试图应该缩放
当试图滚动的时候执行
试图缩放。
允许缩放的视图(一个scrollview中只能有一个可以缩放且必须设置可以缩放的范围)
-(UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
返回被缩放的试图
return imageView;
}