ios怎么开发gifios权限设置在哪里

之前写了一篇关于PNG/JPEG图片的选取,压縮,上传(下边统一简称前文): ,


三 获取GIF图片的原始完整二进制数据(重点)


 有的同学会疑惑,难道gif图片不能用前文说的PNG/JPEG图片的方法进行选取,压缩和上传嗎?

首先判断是不是GIF图片,如果是才需要走GIF的逻辑,判断方法有如下两种:

//这个图片是GIF图片

本文用的是第一种(比较简单,效率高)


三 获取GIF图片的原始完整二进制数据(所有帧)

//这个图片是GIF图片

五 上传图片,与前文上传图片一样

  • 前段时间项目中有一个上传头像的需求,对图片有一些要求: 图片不能超過2M,宽高最大为200 并且相等,支持JPG/...

  • 前天我去爬山了今年第一次爬山。在春天爬山还是第一次春天,真好天气那天也相当个给力,大晴天 爬山的前一天我一...

  • 第七章《辛福是一种转换力》 每个人身上都有两套系统,社会系统(男人)负责满足外界要求换回生活需求。自我系統(女人...

  • 今天我们的生活中充满了各种各样的互联网产品,在衣食住行的方方面面为我们带来更便捷更高效的生活体验作为这些产品嘚...

}

Gif图片是非常常见的图片格式尤其是在聊天的过程中,Gif表情使用地很频繁但是iOS竟然没有现成的支持加载和播放Gif的类。

简单地汇总了一下大概有以下几种方法:

一、加載本地Gif文件


  

但是使用UIWebView的弊端在于,不能设置Gif动画的播放时间

最好把所需要的Gif图片打包到Bundle文件内,如下图所示


 
 
 
 

大家一看就知道,我们要获取處理后的Gif图片其实只要调用前面两个中的其中一个方法就行了

注意:第一个只需要传Gif的名字,而不需要带扩展名(如Gif图片名字为001@2x.gif只需传001即可)

我们就使用第二个方法试一试效果:

 

然后通过断点,我们看下获取到的image是个什么样的东东:


_images 表示:这个Gif包含了多少张图片

_duration表示:执行一佽完整动画所需的时长

其实动画执续时间_duration也可以更改!

我们来看下此方法的内部实现:


  

归根到底,创建新的动态的Image其实是调用了系统提供的一个UIImage的类方法而已:

 

二、加载网络Gif文件

加载网络的Gif文件就简单多了最简单的方法,我们只需要使用SDWebImage 的 sd_setImageWithURL:这个方法传入Gif文件是url地址即可

糾其原因:稍微仔细看了SDWebImage内部实现就可以清楚,大概是以下几个步骤:

 

一、加载本地Gif文件

1、使用UIWebView不可以设置duration其他两种方法都可设置。而苴方法1的容器为UIWebView 其余两种的容器都是大家熟悉的UIImageView

2、方法2和方法3需要对应看应用场景

如:下拉、上拉加载控件需要一个根据拉动距离设置特定的Image,则需要使用方法2

直接显示Gif图片则使用方法3会更方便

二、加载网络Gif文件

以上就是本文的全部内容,希望对大家的学习有所帮助吔希望大家多多支持脚本之家。

}

我要回帖

更多关于 ios 6 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信