UIKit框架-高级控件Swift版本: 1.UIScrollView方法/属性详解

前端之家收集整理的这篇文章主要介绍了UIKit框架-高级控件Swift版本: 1.UIScrollView方法/属性详解前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在前面,我们把UIKit里面的四大基础控件都了解了遍,基本上常用的属性都列出来了,而不常用的方法或者属性就有待大家自行去探究了,现在让我们继续来学习UIKit的控件:


1.UIScrollView的常用属性/方法

常用属性

var contentOffset: CGPoint // 设置内容的中心点,默认是0
var contentSize: CGSize // 设置内容的宽高,默认是0
var contentInset: UIEdgeInsets // 设置UIScrollView的边距,默认是0
var pagingEnabled: Bool // 设置UIScrollView是否可以翻页,默认是false
var scrollEnabled: Bool // 设置UIScrollView是否可用,默认是true
var showsHorizontalScrollIndicator: Bool // 设置UIScrollView的水平滚动,默认是true
var showsVerticalScrollIndicator: Bool // 设置UIScrollView的垂直滚动,默认是true
var scrollIndicatorInsets: UIEdgeInsets // 设置UIScrollView滚动条显示的位置,默认是0
var minimumZoomScale: CGFloat // 设置最小的缩放比例,默认是1.0
var maximumZoomScale: CGFloat // 设置最大的缩放比例,默认是1.0
var scrollsToTop: Bool // 设置点击状态栏就回到ScrollView的最顶部,默认是true
var bouncesZoom: Bool // 设置缩放视图时是否有弹簧效果,默认是true
var bounces: Bool // 设置ScrollView是否滚动时是否有弹簧效果,默认是true

常用方法

// 拖拽视图时调用
optional func scrollViewDidScroll(scrollView: UIScrollView)

// 刚开始拖拽视图的时候调用
optional func scrollViewWillBeginDragging(scrollView: UIScrollView)

// 拖拽停止的时候调用
optional func scrollViewDidEndDragging(scrollView: UIScrollView,willDecelerate decelerate: Bool)

// 当视图滚动速度开始减慢的时候调用
optional func scrollViewWillBeginDecelerating(scrollView: UIScrollView)

//当拖拽的视图完全停下来后才调用
optional func scrollViewDidEndDecelerating(scrollView: UIScrollView)

//当ScrollView的动画执行完之后才调用
optional func scrollViewDidEndScrollingAnimation(scrollView: UIScrollView)     

// 设置视图的比例放大或者缩小
optional func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView?

//当完成比例放大或者缩小的时候调用
optional func scrollViewDidEndZooming(scrollView: UIScrollView,withView view: UIView!,atScale scale: CGFloat)

//是否可以点击状态栏回到最顶部,默认是true
optional func scrollViewShouldScrollToTop(scrollView: UIScrollView) -> Bool    

// 当点击状态栏回到顶部的时候才调用
optional func scrollViewDidScrollToTop(scrollView: UIScrollView)

2.代码实现

实例化UIScrollView,UIImageView,UIImage

class ViewController: UIViewController,UIScrollViewDelegate {
    var scrollView =  UIScrollView()
    var imageView =  UIImageView()
    var imageURL = UIImage()
}

设置UIScrollView

func myScrollView() {
        // 1.1设置ScrollView的Frame
        scrollView.frame = CGRectMake(0,0,self.view.frame.width,self.view.frame.height)

        // 1.2设置ScrollView的边距
        scrollView.contentInset = UIEdgeInsetsMake(10,10,10)

        // 1.3设置ScrollView的代理
        scrollView.delegate = self

        // 1.4设置ScrollView的最小缩放比例
        scrollView.minimumZoomScale = 0.1

        // 1.5设置ScrollView的最大缩放比例
        scrollView.maximumZoomScale = 1.5

        // 1.6添加到父视图
        self.view.addSubview(scrollView)
    }

设置UIImageView

func myImageView() {
        // 2.1设置ImageView的图片
        imageURL = UIImage(named: "image_landscape3.jpg")!

        // 2.2设置添加图片方法以及对象
        self.setImage(imageURL)

        // 2.3添加到ScrollView上
        scrollView.addSubview(imageView)
    }

设置UIImage

func setImage (image: UIImage) {
        // 3.1设置image对象
        imageURL = image

        // 3.2设置imageView的image内容
        imageView.image = image

        // 3.3设置imageView根据image自动调整大小
        imageView.sizeToFit()

        // 3.4设置ScrollView的内容大小为image的大小
        scrollView.contentSize = image.size
    }

3.实现的效果

猜你在找的Swift相关文章