import UIKit

class ViewController: UIViewController ,UIScrollViewDelegate{

override func viewDidLoad() {

super.viewDidLoad()

let scrollView = UIScrollView.init()

scrollView.frame = self.view.bounds

let imageView = UIImageView.init(image: UIImage.init(named: "1"))

scrollView.contentSize = imageView.bounds.size

scrollView.addSubview(imageView)

self.view.addSubview(scrollView)

// 手势缩放大小

// 要实现放大缩小功能, 需要指定 UIScrollView 的允许缩放的最大和最小比例 (默认都是 1.0)

// 同时 delegate 属性指定一个委托类, 委托类要继承 UIScrollViewDelegate 协议, 并实现 viewForZooming 方法

scrollView.minimumZoomScale = 0.1 //最小比例

scrollView.maximumZoomScale = 3 //最大比例

scrollView.delegate = self

}

func viewForZooming(in scrollView: UIScrollView) -> UIView? {

for subview : AnyObject in scrollView.subviews {

if subview.isKind(of: UIImageView.classForCoder()) {

return subview as? UIView

}

}

return nil

}

//视图滚动中一直触发

func scrollViewDidScroll(_ scrollView: UIScrollView) {

print("x:\(scrollView.contentOffset.x) y:\(scrollView.contentOffset.y)")

}

override func didReceiveMemoryWarning() {

super.didReceiveMemoryWarning()

// Dispose of any resources that can be recreated.

}

}

swift 实践- 14 -- UIScrollView的更多相关文章

  1. swift 实践- 08 -- UISegmentedControl

    import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoa ...

  2. swift 学习- 14 -- 继承

    // 一个类可以继承另一个 类的方法, 属性和其他特征, 当一个类继承其他类时, 继承类叫子类, 被继承类叫父类 或 (超类), 在 Swift 中, 继承是区分 [类] 和其他类型的 一个基本特征 ...

  3. es6+最佳入门实践(14)

    14.模版字符串 模版字符串(template string)是增强版的字符串,定义一个模版字符串需要用到反引号 let s = `这是一个模版字符串` console.log(s) 14.1.模版字 ...

  4. Swift 实践之UIWebView

    1.选中工程,点击右键,New File>在iOS下选中Othe>Empty,生成一个.js的脚本文件,将代码粘贴过去保存; var script = document.createEle ...

  5. ASP.NET-FineUI开发实践-14

    以前写过一个表格自动补全,改下,就出现了部分级联修改.测试版本4.1.1 共享下JS,ext-part2.js       后台再来个得到数据的方法就可以了.   1.方法还是删除+插入,主要在  i ...

  6. swift 实践- 13 -- UIStepper

    import UIKit class ViewController: UIViewController { var stepper: UIStepper! var label: UILabel! ov ...

  7. swift 实践- 12 -- UIPickerView

    import UIKit class ViewController: UIViewController , UIPickerViewDelegate,UIPickerViewDataSource{ v ...

  8. swift 实践- 11 -- UISlider

    import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoa ...

  9. swift 实践- 10 -- UIProgressView

    import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoa ...

随机推荐

  1. MySQL图形化管理工具

    PHPMyAdmin(关于web界面的) Navicat MySQL Workbench

  2. cpp 常量函数(函数后加const)

    const用在成员函数后 主要是针对类的const 对象 如: class Text{ public:     void printconst(void)const{cout<<" ...

  3. js获取当前时区GMT

    1:js获取当前时区GMT 首先引入插件: <script src="../js/shiqu/jstz-1.0.4.min.js"></script> // ...

  4. 【JS】空格分隔手机号

    '88888888888'.replace(/^(.{3})(.*)(.{4})$/, '$1 $2 $3')

  5. 对Tomcat部署web应用的方式总结

    对Tomcat部署web应用的方式总结,常见的有以下四种: 1.[使用控制台部署] 访问Http://localhost:8080,并通过Tomcat Manager登录,进入部署界面即可. 2.[利 ...

  6. jsp映射为其他地址上去 ???

    在web.xml 里面配置servlet不起作用,所以配置jsp,然后在jsp里面跳转到servlet去   ???  第八天中的<08-jsp常用标签.avi> 在web.xml里面先设 ...

  7. Exception:两个类具有相同的 XML 类型名称,请使用 @XmlType.name 和 @XmlType.namespace 为类分配不同的名称

    具体报错:  找到报错的类: 对XmlType重新命名(最简单粗暴的方法):

  8. Light oj 1018 - Brush (IV) 状态压缩

    题目大意: 给出n个点的坐标,求至少画多少掉直线才能连接所有点. 题目思路:状态压缩 首先经行预处理,求出所有状态下,那些点不在该状态内 以任意两点为端点求出这条直线的状态 枚举所有状态,找出不在当前 ...

  9. Invalid character found in the request target.

    背景:springboot项目内置tomcat9.0 调用的接口中有{}就会报错 解决办法: 新的tomcat新版本增加了一个新特性,就是严格按照 RFC 3986规范进行访问解析,而 RFC 398 ...

  10. C/C++中 # 的神奇作用:把宏参数字符串化/贴合宏参数

    一.一般用法   我们使用#把宏参数变为一个字符串,用##把两个宏参数贴合在一起. #define STR(s) #s #define CONS(a,b) int(a##e##b) printf(ST ...