博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
swift - UIScrollView 的使用
阅读量:5827 次
发布时间:2019-06-18

本文共 2657 字,大约阅读时间需要 8 分钟。

本节详细介绍scrollview的用法

————————————————————————————————————

UIScrollView 是一个能够滚动的视图控件,可以用来展示大量的内容,并且可以通过滚动查看所有的内容

UIScrollView 用法,将需要展示的内容添加到scrollview中

设置UIScrollView 的contentView属性,告诉UIScrollView所有内容的尺寸

1、初始化

let scrollView = UIScrollView()var imageView = UIImageView()var imageView2 = UIImageView()var imageView3 = UIImageView()var imageView4 = UIImageView()

2、创建scrollview,并确定好所需设置的属性

scrollView.delegate = self //设置代理scrollView.frame = CGRect(x:0,y:64,width:self.view.frame.size.width,height:200)//设置scrollview的大小scrollView.backgroundColor = UIColor.white//设置背景颜色scrollView.pagingEnabled = true //是否支持分页scrollView.bounces = false //是否支持回弹效果scrollView.showsVerticalScrollIndicator = false //垂直滑动线隐藏scrollView.showsHorizontalScrollIndicator = false //水平滑动线隐藏//scrollView.contentInset = UIEdgeInsetsMake(10, 10, 10, 10) //设置内边距scrollView.contentSize = CGSize(width:self.view.frame.size.width * 3,height:0)

 

3、实现轮播的效果

1)添加图片

/***添加多张图片到scrollview里面***/        harray = ["2.jpg","3.jpg","4.jpg"]                //所以这里切换成for循环的方式添加图片        for i in 0..

 

2)实现轮播的效果

所需要注意的是:就是设置好所添加图片的frame,上面的代码写的很详细,大家可以参考!

效果图如下:

 

4、实现图片缩放的效果

1)创建scrollview,并添加图片

scrollView.delegate = self    scrollView.frame = self.view.bounds    let imageView = UIImageView(image:UIImage(named:"1.jpeg"))    scrollView.contentSize = imageView.bounds.size    scrollView.addSubview(imageView)    self.view.addSubview(scrollView)    scrollView.minimumZoomScale = 0.1    scrollView.maximumZoomScale = 5.0

 

2)实现一个代理方法,在此方法中指定需要缩放的子控件

func viewForZooming(in scrollView: UIScrollView) -> UIView? {             for subView:AnyObject in scrollview.subviews {            if subView.isKind(of:UIImageView.self) {                return subView as? UIView            }        }                return nil    }

 

效果图如下:

 

5、代理方法的作用

func scrollViewDidScroll(_ scrollView: UIScrollView) {        print("只要滚动了就会触发哦。")    }    func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {        print("开始拖拽视图")    }    func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) {        print("结束滚动")    }    func scrollViewWillBeginDecelerating(_ scrollView: UIScrollView) {        print("将开始降速时")    }    func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {        print("减速停止了时执行,手触摸时执行执行")    }    func scrollViewDidEndScrollingAnimation(_ scrollView: UIScrollView) {        print("滚动动画停止时执行,代码改变时触发,也就是setContentOffset改变时")    }    func scrollViewDidEndZooming(_ scrollView: UIScrollView, withView view: UIView?, atScale scale: CGFloat) {        print("完成放大缩小时调用")    }

 

 上面的方法都备注了什么时候执行,很清楚,大家可以试试!

最后,上传一张网络上的图片:

 

转载于:https://www.cnblogs.com/hero11223/p/5707969.html

你可能感兴趣的文章
pythoy的configparser模块
查看>>
传值方式:ajax技术和普通传值方式
查看>>
Linux-网络连接-(VMware与CentOS)
查看>>
经典的CSS代码(转)
查看>>
Django
查看>>
MIPS中的异常处理和系统调用【转】
查看>>
Linux系统调用、新增系统调用方法【转】
查看>>
寻找链表相交节点
查看>>
jquery对象 与 document 对象的互为转换关系
查看>>
LeetCode OJ:Path Sum II(路径和II)
查看>>
Python 核心编程(第二版)——函数和函数式编程
查看>>
AS3——禁止swf缩放
查看>>
说给部分程序员听
查看>>
linq 学习笔记之 Linq基本子句
查看>>
Java中新建子文件夹和新建文件
查看>>
[Js]布局转换
查看>>
Hot Bath
查看>>
国内常用NTP服务器地址及
查看>>
Java annotation 自定义注释@interface的用法
查看>>
go的接口
查看>>