iOS使用UIScorllView实现两指缩放功能

两指缩放功能不仅可以用UIPinchGestureRecognizer手势来实现,还能用UIScorllView来实现,UIScrollView可以轻松的实现最大与最小缩放值,以及滚动的效果。代码如下:

#import "ViewController.h"
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIScrollView *scrollView;
@property (strong, nonatomic) UIImageView *imageView;
@end
@implementation ViewController
- (void)viewDidLoad {
  [super viewDidLoad];
  _scrollView.minimumZoomScale = 1.0;   // 最小缩放值
  _scrollView.maximumZoomScale = 10.0;  // 最大缩放值
  [_scrollView setZoomScale:_scrollView.minimumZoomScale];  // 初始时候的缩放值
  _scrollView.delegate = self;
  _imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image"]];
  _imageView.frame = self.view.frame;
  [_scrollView addSubview:_imageView];
}
#pragma mark - 返回需要缩放的控件
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
  return _imageView;
}
- (void)didReceiveMemoryWarning {
  [super didReceiveMemoryWarning];
}
@end

关键点就是调用viewForZoomingInScrollView:代理方法,这里返回了需要缩放的控件。

Demo的GitHub地址

以上所述是小编给大家介绍的iOS使用UIScorllView实现两指缩放功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • iOS开发中Quartz2D控制圆形缩放和实现刷帧效果

    Quartz2D简要回顾 一.什么是Quartz2D Quartz 2D是⼀个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作: 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成PDF 截图\裁剪图片 自定义UI控件 二.Quartz2D在iOS开发中的价值 为了便于搭建美观的UI界面,iOS提供了UIKit框架,⾥⾯有各种各样的UI控件 UILabel:显⽰文字 UIImageView:显示图片 UIButton:同时显示图片和⽂

  • iOS手势识别的详细使用方法(拖动,缩放,旋转,点击,手势依赖,自定义手势)

    手势识别在iOS上非常重要,手势操作移动设备的重要特征,极大的增加了移动设备使用便捷性. 1.UIGestureRecognizer介绍 手势识别在iOS上非常重要,手势操作移动设备的重要特征,极大的增加了移动设备使用便捷性. iOS系统在3.2以后,为方便开发这使用一些常用的手势,提供了UIGestureRecognizer类.手势识别UIGestureRecognizer类是个抽象类,下面的子类是具体的手势,开发这可以直接使用这些手势识别. UITapGestureRecognizer UI

  • iOS UITableView展开缩放动画实例代码

    Swift - UITableView展开缩放动画 效果 源码:https://github.com/YouXianMing/Swift-Animations // // HeaderViewTapAnimationController.swift // Swift-Animations // // Created by YouXianMing on 16/8/9. // Copyright © 2016年 YouXianMing. All rights reserved. // import

  • iOS实现点击微信头像(放大、缩放、保存)效果

    先来看看实现效果(GIF): 实现思路: 直接自定义 UIView(CYPhotoPreviewer),为了实现双击缩放,可以实现 UIScrollViewDelegate 对应的方法.如果需要模糊背景,可以在自定义的 UIView 中先添加模糊背景,再添加 UIScrollView,继而在 UIScrollView 中添加图片容器,这个容器就是要显示的图片的 superView,代码一目了然: - (void)setup { self.frame = [UIScreenmainScreen].

  • iOS应用开发中对UIImage进行截取和缩放的方法详解

    截取UIImage指定大小区域 最近遇到这样的需求:从服务器获取到一张照片,只需要显示他的左半部分,或者中间部分等等.也就是截取UIImage指定大小区域. UIImage扩展: 我的解决方案是对UIImage进行扩展.通过CGImageRef和CGImage完成截取,调用的方法是:CGImageCreateWithImageInRect.扩展类叫UIImage+Crop,具体代码如下: UIImage+Crop.h #import <UIKit/UIKit.h> typedef NS_ENU

  • iOS应用开发中使用UIScrollView控件来实现图片缩放

    一.知识点简单介绍 1.UIScrollView控件是什么? (1)移动设备的屏幕⼤大⼩小是极其有限的,因此直接展⽰示在⽤用户眼前的内容也相当有限 (2)当展⽰示的内容较多,超出⼀一个屏幕时,⽤用户可通过滚动⼿手势来查看屏幕以外的内容 (3)普通的UIView不具备滚动功能,不能显⽰示过多的内容 (4)UIScrollView是一个能够滚动的视图控件,可以⽤用来展⽰示⼤大量的内容,并且可以通过滚 动查看所有的内容 (5)  举例:手机上的"设置".其他⽰示例程序 2.UIScrollV

  • iOS使用UIScorllView实现两指缩放功能

    两指缩放功能不仅可以用UIPinchGestureRecognizer手势来实现,还能用UIScorllView来实现,UIScrollView可以轻松的实现最大与最小缩放值,以及滚动的效果.代码如下: #import "ViewController.h" @interface ViewController () @property (weak, nonatomic) IBOutlet UIScrollView *scrollView; @property (strong, nonat

  • iOS实现简单的头部缩放功能

    本文通过实例代码给大家介绍了iOS实现简单的头部缩放功能.实现思路有头部视图,滚动视图,控制头部动画等多个示例代码块,大家可以参考下本文. 简单实现并集成一个头部缩放的功能,适用于UIScrollView以及其子类. 头部伴随模糊效果放大缩小,并在一定位置时悬停充当导航栏.这里提供实现思路,如有符合可直接使用. 效果如下图. 实现: 首先分解为两部分,一部分为头部视图,一部分为滚动视图.头部视图负责展示,滚动视图负责控制头部视图如何展示,比如放大和缩小. 一:头部视图 头部视图拆解为负责展示图片

  • Android控件实现图片缩放功能

    1 简介 先来一张效果图 TIM图片.gif 上图中灰色的一块是ImageView控件,ImageView中的图片进行左右上下移动,以及双指缩放. 对于android控件的缩放移动,点这里----android控件的缩放,移动 2 使用步骤 布局layout <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.

  • iOS开发微信收款到账语音提醒功能思路详解

    一.背景 为了解决小商户老板们在频繁交易中不方便核对.确认到账的痛点,产品MM提出了新版本需要支持收款到账语音提醒功能.这篇文章总结了开发过程中遇到的坑和一些小技巧. 二.技术方案 后台唤醒App 收款到账语音提醒需要收款方在收到款后,播放一段TTS合成语音播报金额,微信在前台时可以通过模板消息将需要播报的金额带下来,再请求TTS数据并播放,但是app在挂起或者被kill掉的情况下要如何请求语音数据并播放呢? iOS提供了两种方式唤醒处于挂起或已经被kill掉的app.分别是Silent Not

  • iOS中实现动态区域裁剪图片功能实例

    前言 相信大家应该都有所体会,裁剪图片功能在很多上传图片的场景里都需要用到,一方面应用服务器可能对图片的尺寸大小有限制,因而希望上传的图片都是符合规定的,另一方面,用户可能希望只上传图片中的部分内容,突出图片中关键的信息.而为了满足用户多种多样的裁剪需求,就需要裁剪图片时能支持由用户动态地改变裁剪范围.裁剪尺寸等. 动态裁剪图片的基本过程大致可以分为以下几步 显示图片与裁剪区域 支持移动和缩放图片 支持手势改变裁剪区域 进行图片裁剪并获得裁剪后的图片 显示图片与裁剪区域 显示图片 在裁剪图片之前

  • 使用OpenCV实现仿射变换—缩放功能

    前面介绍怎么样实现平移的功能,接着下来演示缩放功能.比如在一个文档里插入一个图片,发现这个图片占用太大的面积了,要把它缩小,才放得下,与文字的比例才合适.这样的需求,就需要使用仿射变换的缩放功能,而实现这个功能的方法,就是采用齐次坐标的变换功式: 可看到最后一条公式,就是缩放公式,要实现二维图像的缩放,需要构造前面那个缩放矩阵,因此在OpenCV也是构造一个2X3的矩阵.不过,在缩放变换里,要考虑另外一个问题,比如图片放大之后,原来两点像素的距离变大了,在中间留下了空间,那么中间空白的像素点怎么

  • Android 图片处理缩放功能

    PS:在开发中我们会遇到一些图片处理问题,比如说缓存图片了.限制图片大小了.查看图片了等.上一篇文章介绍了图片的全景效果查看,今天介绍一个图片缩放,我们如果有时间的话,可以自己写一个属于自己的库,里面会用到view的按压.事件分发.手势等一些知识,如果没有时间或者不会其他的方法,不妨来看看这个PhotoView.这是一个图片缩放库,对于这样的还有GitView等,下面我就介绍一些用法. 功能: 正常加载图片 双击放大 手势随意缩放 随意拖动查看图片每一个角落 结合其他设置可实现翻转 效果图 1:

  • iOS实现微信朋友圈视频截取功能

    序言 微信现在这么普及,功能也做的越来越强大,不知大家对于微信朋友圈发视频截取的功能或者苹果拍视频对视频编辑的功能有没有了解(作者这里也猜测,微信的这个功能也是仿苹果的).感觉这个功能确实很方便实用,近来作者也在研究音视频功能,所以就实现了一下这个功能. 功能其实看着挺简单,实现过程也踩了不少坑.一方面记录一下:另一方面也算是对实现过程的再一次梳理,这样大家看代码也会比较明白. 效果 我们先看看我实现的效果 实现 实现过程分析 整个功能可以分为三部分: 视频播放 这部分我们单独封装一个视频播放器

  • iOS高仿微信文章悬浮球功能

    前言 微信在最新版本6.6.7,新加了一个文章悬浮球功能.当你正在阅读文章的时候,突然有好友发来了紧急消息,你需要立即回复.又或者你刚好路过小吃店,需要临时打开微信支付,等等临时中断阅读的情况.以前只有退出文章详情页面,处理完事情之后,再挨着挨着找到原来的文章.对于我们这种重度微信使用者来说,每次遭遇这种情况,真的很蛋疼.所以,当这个功能推出的事情,立马更新了最新版本,这个功能感觉就像遇到了知心人一样,用起来十分顺手.可以通过下面的动图感受一下 其实悬浮球的概念早就有了.比如360助手的流量监控

  • Python使用OpenCV对图像进行缩放功能

    OpenCV:图片缩放和图像金字塔 对图像进行缩放的最简单方法当然是调用resize函数啦! resize函数可以将源图像精确地转化为指定尺寸的目标图像. 要缩小图像,一般推荐使用CV_INETR_AREA来插值:若要放大图像,推荐使用CV_INTER_LINEAR. 现在说说调用方式 第一种,规定好你要图片的尺寸,就是你填入你要的图片的长和高. #include<opencv2\opencv.hpp> #include<opencv2\highgui\highgui.hpp> u

随机推荐