2017-04-20
Android 中 GIF 动图的播放控制与监听
Android 中 GIF 动图处理与监听
最近接手的项目里涉及到了 GIF 动图的播放与监听,在上一版本中对于 GIF 的处理是由 H5 来实现的,因为考虑到用户体验,因此现在的需求是将这块儿原生化,途中差点误入歧途!
实现后的效果,图片是 GIF,下方 Button 按钮,可控制播放次数:
刚开始第一个想到的便是 glide , 但是自认为 glide 不能够控制 GIF 以及去监听它,所以网上去搜寻别的方法。看到有一个方案是将图片分帧,一张张的去用逐帧动画来实现。
我开始怀疑给这个解决方案的人了,都什么时代了还做这种费力不讨好,大量占用用户内存的东西!于是乎动手前又仔细 Google 了一番,答案着实令我尴尬,glide 是可以控制 GIF 动画的!!!
怒上代码 :使用glide 加载 GIF 动图
|
很简单的一行代码就可以搞定,以上方式图片和动图都可以加载(网络连接亦可)
下面是只可以加载 GIF 动图的写法:
|
其实就多了个 asGIF
但是这种方式下的动图播放一直是循环的,有什么方式可以停下来呢!没遇到过千万别说没必要,假如现在有一个需求,需要点击一下按钮来播放一次 GIF 实现与用户的交互呢?这个技能我想你肯定是要 get 的,因为类似需求你迟早会碰到!
下面写法实现了对 GIF 动图的控制
|
使用这种方式就可以完美的实现对 GIF 的控制,对我遇到的需求提供了良性支持!
微信公众号「smartbeng」,吐血版珍藏持续更新,一个会爱上的公众号。
smartbeng