UIScrollView常用属性使用

一 UIScrollView 的基本属性

    UIScrollView *scrollView = [[UIScrollView alloc] init];//创建UIScrollView

    scrollView.frame = CGRectMake(0, 0, 250, 250); // frame中的size指UIScrollView的可视范围 指定UIScrollView可滑动的距离大小

    scrollView.backgroundColor = [UIColor grayColor];//指定UIScrollView北景色

    [self.view addSubview:scrollView];//把该控件添加到主窗体

 // 设置UIScrollView的滚动范围(内容大小)这个属性很重要,如果没有该属性UIScrollView将不可滑动

    scrollView.contentSize = imageView.image.size;//通常scrollView.contentSize的大小为可滑动图片的大小,这里设置的是图片的大小

// 隐藏水平滚动条

    scrollView.showsHorizontalScrollIndicator = NO;

    scrollView.showsVerticalScrollIndicator = NO;

    

    // 用来记录scrollview滚动的位置

//    scrollView.contentOffset = ; 

    // 去掉弹簧效果

//    scrollView.bounces = NO;

    // 增加额外的滚动区域

    // top  left  bottom  right

    scrollView.contentInset = UIEdgeInsetsMake(20, 20, 20, 20);

//下面这个属性是让滑动的图片立刻回到原点,到窗体刚加载时的样子,没有滑动的位置 

 _scrollView.contentOffset = CGPointMake(0, 0);

二  图片的伸缩属性

  // 设置scrollview的代理对象

    scrollView.delegate = self;//首先要设置代理的对象,这里设置的代理对象为self 就是控制器本身 同时必须遵循 

   UIScrollViewDelegate协议,如果不遵循这个协议将调不到伸缩方法(伸缩完毕 伸缩中等方法)

    // 设置最大伸缩比例

    scrollView.maximumZoomScale = 2.0;

    // 设置最小伸缩比例

    scrollView.minimumZoomScale = 0.2;

#pragma mark - UIScrollView 的 代理方法

#pragma mark 这个方法返回的控件就能进行捏合手势缩放操作

#pragma mark 当UIScrollView尝试进行缩放的时候就会调用

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView

{

    return _imageView;//这里反回的是伸缩的那个VIEW  ,viewForZoomingInScrollView为系统自动调用只要遵循协议

}

#pragma mark 当缩放完毕的时候调用

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale

{

//    NSLog(@"结束缩放 - %f", scale);

}

#pragma mark 当正在缩放的时候调用

- (void)scrollViewDidZoom:(UIScrollView *)scrollView

{

//    NSLog(@"-----");

}

#pragma mark - UIScrollView的代理方法

#pragma mark 当scrollView正在滚动的时候调用

- (void)scrollViewDidScroll:(UIScrollView *)scrollView

{

}

原文地址:https://www.cnblogs.com/xgj0721/p/4338462.html