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. IDEA 远程调试 Tomcat 和 Debugger

    一般来说我们本地环境使用Tomcat,生产环境使用GlassFish. 准备工作 明确远程服务器的 IP 地址,比如:192.168.92.128 关掉服务器防火墙:service iptables ...

  2. fastclick.js插件使用简单说明

    为什么存在延迟? 从点击屏幕上的元素到触发元素的 click 事件,移动浏览器会有大约 300 毫秒的等待时间.为什么这么设计呢? 因为它想看看你是不是要进行双击(double tap)操作.     ...

  3. mybatis 三剑客 generator配置 、mybatis plugin

    generator配置 1.配置pom.xml 导入mysql驱动.mybatis.mybatis-generator的依赖 <dependency> <groupId>org ...

  4. SQL 删除的三个语句:DROP、TRUNCATE、 DELETE 的区别

    转载:http://www.runoob.com/sql/sql-delete.html DROP: DROP test; 删除表test,并释放空间,将test删除的一干二净. TRUNCATE: ...

  5. SpringSecurity个性化用户认证流程

    ⒈自定义登录页面 package cn.coreqi.security.config; import org.springframework.context.annotation.Bean; impo ...

  6. AI 玩法整理

    随着信息技术的火热发展,人工智能已经成为IT全行业的风口爆发点,既然风口来了,作为技术人人员也都毫不犹豫的分一杯羹,怎么玩呢? 接下来的博客就会带领大家一起玩玩AI 认识AI--略,如果有需要的可以再 ...

  7. Git使用手册【转】

    转自:https://www.jianshu.com/p/e32a8e7ca93b 目录: Git是什么 基本概念 Git的诞生 Git的安装与配置 创建版本库 Git操作略览 远程仓库:git的杀招 ...

  8. Django 的系统时区设置 RPC

    PRC   Deprecated +08:00 +08:00 Link to Asia/Shanghai settings.py  文件的设置项:   TIME_ZONE = 'PRC'     来源 ...

  9. Python3学习笔记02-基础语法

    默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串 ' # -*- coding:cp-1252 -*-' 也可以指定其他编码,以上用cp-1252字符 ...

  10. 古董VS2002安装

    在2002 年,随着 .NET 口号的提出与 Windows XP/Office XP 的发布,微软发布了 Visual Studio .NET(内部版本号为 7.0). 使用VS2002+Objec ...