zoukankan      html  css  js  c++  java
  • 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, 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.实现的效果

    效果图

  • 相关阅读:
    第四周JSP作业
    jsp第二次作业
    3.4软件管理与测试作业
    jsp3月3日作业
    课后listview作业
    安卓sql
    activity带数据跳转
    answers
    阿里云ESC无法使用python发送邮件的问题
    Ubuntu 更改时区
  • 原文地址:https://www.cnblogs.com/iOSCain/p/4529349.html
Copyright © 2011-2022 走看看