当前位置: 传客网 > UIScrollView实现iOS图片手势放大

UIScrollView实现iOS图片手势放大

2017-01-12 作者:虽然菜

这两天搞图片手势放大,网上使用UIScrollView来实现的例子很多,效果也不错,不过当图片的尺寸和屏幕的尺寸不相同时,会出现图片上方有空白的情况,并且放的越大,空白越大,越看越别扭。
怎么办呢,推荐一个开源代码:https://github.com/vitoziv/VIPhotoView ,人家就是用UIScrollView实现的,还能解决空白的问题,不得不佩服。

仔细阅读了代码之后终于明白了实现的原理,这里有几个关键点:

首先是contentSize,这个设置成和图片的大小一样,也就是UIScrollView的滚动区域和图片的大小一样。
然后是图片的坐标必须是(0,0),contentSize就是从0开始算的。把坐标设置为0,图片上面当然就没有之前的空白区域了。
UIScrollView插入额外的滚动区域,让图片居中,在用手势放大的时候,动态地修改这个插入的滚动区域,就实现了我们想要的效果。



相关推荐

  • 图片一拉大就模糊!要不要试试无损放大图片?

    今天的这个话题,我想基本上这里看文章的人应该都有遇到过!你有没有这样的经历:写一个东西,需要配图,然后在网络上好不容易找到一张图片,刚好适合你的内容配图,但是图片很小分辨率太低,一拉大就变模糊了,结果只好无奈舍弃。或者你需要用一下公司以前的

  • 如何放大图片而不失真?

    如何放大图片而不失真?一般图片放大到一定程度后会失真,但矢量图片放大后不会失真,为了把图片放大又不失真,我们可以使用”photoZoomv6.6.06”软件,它可以把JPEG,PNG等格式图片变为矢量图片,下面介绍该软件的下载安装和使用方法

  • 良心推荐一款无损放大图片的软件!(支持Mac、Win)

    ​美丫姐要来给大家分享好用的工具啦!​大家在找到心仪的素材以及资源图片的时候,难免会遇到一个问题:图!片!不!够!大!怎!么!办!这个时候你应该庆幸自己看到这篇文章,因为你将会改变​你的人参!这个软件叫做

  • 小视图显示放大图片效果

    http://www.open-open.com/code/view/1434286637166一张图片如果放大的话一般情况下会失真,如果该图片是规则的,比如这个聊天气泡,可以用如下代码来设置?123UIImage*righ

  • 图片实现3D效果AE模板 Videohive Ambience 3D Constructor

    图片实现3D效果AE模板VideohiveAmbience3DConstructor本AE模板是一个把平面图片转化成3d视觉效果视频的理想工具,模板结构化,操作友好,只需要点击几下鼠标就能实现文字、色彩、透明度、光线等方面的控制。1.适用于

  • Div+css菜单:一张图片实现翻转效果

    传统的方法制作这个翻转图效果的菜单,要把图片切成10块,还要加上JS鼠标交互效果的代码。现在完全用CSS来实现,图片只要一张即可以达到效果。http://www.52css.com/article.asp?id=166

  • iOS - 图片实现多层折叠效果

      序  在网上能找到挺多图片折叠效果的教程,但大多数是一层折叠,在他们的教程的基础上,我试着实现了一下多层折叠的效果。西安iOS培训硬是要高就业!北邮在线98%的高薪就业率,别问为什么有2%不是,问问自己最起码的态度是不是认真,一个正常的

  • 下拉放大图片

    http://www.open-open.com/code/view/1437358033162其实这个效果,本质上就是在你tableView下拉造成offset时候,保持你顶部图片的y坐标点还停留在下拉时屏幕的顶点(offset),而图片

  • 简单PHP上传图片、删除图片实现代码

    代码如下:if(!empty($_FILES["img"]["name"])){//提取文件域内容名称,并判断$path=”uppic/”;//上传路径if(!file_exists($path)){//检查是否有该文件夹,如果没有就创建,

  • 在IE6浏览器下使用CSS滤镜使PNG图片实现半透明效果

    .xxx{background-image:url(../images/a.png);_background:none;_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(e

  • 下拉放大图片

    -(void)viewDidLoad{[superviewDidLoad];//设置内边距(让cell往下移动一段距离)self.tableView.contentInset=UIEdgeInsetsMake(HMTopViewH*0.5,

  • 小窗口V0.0.0.22绿色版(控制窗口位置大小来实现最小播放窗口)下载,高速下载

    小窗口V0.0.0.22绿色版(控制窗口位置大小来实现最小播放窗口)软件标签:小窗口软件授权:绿色版更新时间:2010-10-1114:13:10软件类型:国产软件软件大小:20.0KB软件语言:简体中文 应用平台:Win2000/WinX

  • jQuery插件Magnify放大镜实现javascript图片放大功能

    Magnify放大镜实现图片放大功能时候制作图片放大功能时需要实现图片的放大镜效果,当鼠标移动在小图片区域时实现大图片的放大效果,jQuery插件Magnify放大镜可实现javascript图片放大功能,使用比较简单,效果图如下:实例代码

  • 图片浏览器,实现放大缩小,上一张、下一张图片循环浏览

    /ImageRead.java*图片浏览器,实现放大缩小,上一张、下一张图片浏览等功能*程序主界面,把所有图像分割算法用图像界面展示出来*2012-5-12/packagecom.graduation.swing;importjava.aw

  • C# 鼠标滚动来实现PictureBox中图片的放大缩小

    1:pictureBox控件设置sizeMode属性为ZooM2:pictureBox控件的parent是一个panel3:效果为:鼠标滚动pictureBox中图片随着放大缩小,并居中显示在panel中一下是具体的代码实现:1:工具类:设

  • CSS实现图片翻转效果

    今天有读者询问制作鼠标经过时切换图片的效果,这种效果也称为“翻转”效果(roll-over)。原来这种效果大多使用Javascript实现,实际上用CSS可以非常方便地制作出来的。这里给出一个最简单的效果,在深入的复杂效果变化就非常多了,有

  • php抓取网站图片并保存的实现方法

    本篇内容重点讲解了php抓取网站图片并保存的实现方法,重点借鉴了匹配img标签和其src属性正则的写法,封装了一个php远程抓取图片的类,感兴趣的小伙伴们可以参考一下php如何实现抓取网页图片,相较于手动的粘贴复制,使用小程序要方便快捷多了

  • cocos2d-js 圆角图片的实现

    现在好多应用在头像设置的时候更多的使用圆形而不是方形,圆形头像美观简洁,好处不说了,实现原理如下:1、初始化模板,这张模板图片是个圆形,圆形外围是透明部分,不知道什么原因不能上传图片,只好这样描述了,汗​varstencil=n

  • 10个JavaScript实现的图片特效 【转】

    一般来说,我们在写博客或做网站时都需要对插图做一些效果,比如增加阴影、图片圆角、倒映等等。这些效果一般可以用3个方法实现,一是用PS实现对图片进行修改,二是使用CSS,三是使用JavaScript。使用PS会破坏原图,而且要花费一定的时间。

  • wewebView图片放大和缩小(续)

    创建放大图片的视图?123456789101112131415161718192021222324252627282930313233343536373839404142#pragmamark显示大图片-(void)showBigImage

返回
顶部