[Swift通天遁地]三、手势与图表-(3)通过捏合手势放大和缩小图像视图

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/10210612.html 
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

目录:[Swift]通天遁地Swift

本文将演示通过捏合手势,实现图片的放大和缩小。

在项目导航区,打开视图控制器的代码文件【ViewController.swift】

现在开始编写代码,实现通过捏合手势,实现图片的放大和缩小。

 1 import UIKit
 2 
 3 class ViewController: UIViewController {
 4     
 5     override func viewDidLoad() {
 6         super.viewDidLoad()
 7         // Do any additional setup after loading the view, typically from a nib.
 8 
 9         //首先创建一个矩形区域,作为图像视图的显示区域
10         let rect = CGRect(x: 0, y: 80, width: 320, height: 320)
11         //根据该显示区域,初始化一个图像视图
12         let imageView = UIImageView(frame: rect)
13         
14         //从项目中读取一张图片资源
15         let image = UIImage(named: "Hand")
16         //由图像视图负责图像的显示
17         imageView.image = image
18         
19         //设置图像视图的交互属性为真,
20         //使图像视图可以接收触摸事件
21         imageView.isUserInteractionEnabled = true
22         //最后将图像视图添加到当前视图控制器的根视图
23         self.view.addSubview(imageView)
24         
25         //初始化一个捏合手势,并给手势绑定触发事件
26         let guesture = UIPinchGestureRecognizer(target: self, 
27                                                 action:#selector(ViewController.pinchImage(_:)))
28         //将捏合手势添加到图像视图
29         imageView.addGestureRecognizer(guesture)
30     }
31     
32     //添加一个方法,作为捏合手势的回调方法
33     func pinchImage(_ recognizer:UIPinchGestureRecognizer)
34     {
35         //根据捏合手势识别器的缩放比例,调整图像视图的缩放比例。
36         recognizer.view?.transform = (recognizer.view?.transform.scaledBy(x: recognizer.scale,
37                                                                           y: recognizer.scale))!
38         //恢复捏合手势识别器的初始比例,
39         //使每次缩放都从百分之百的比例进行。
40         recognizer.scale = 1;
41     }
42     
43     override func didReceiveMemoryWarning() {
44         super.didReceiveMemoryWarning()
45         // Dispose of any resources that can be recreated.
46     }
47 }

 

转载于:https://www.cnblogs.com/strengthen/p/10210612.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值