React Native在Android平台运行gif的解决方法
来源:互联网 发布:水晶dj软件下载 编辑:程序博客网 时间:2024/05/21 09:08
概述
目前RN在Android平台上不支持gif格式的图片,而在iOS平台是支持的,期待以后的版本中系统也是可以默认支持android的。首先说下在ios平台怎么加载gif呢?http://blog.csdn.net/xiangzhihong8/article/details/55803237?1487761206687
- 1
- 1
完整实例:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
RN在Android平台的解决方法
facebook fresco方法
要解决上面的问题,方法还是很多的,最简单的莫过于使用facebook的jar支持库,在android/app/build.gradle文件中新增
- 1
- 2
- 1
- 2
Fresco是一个强大的图片加载组件,Android 本身的图片库不支持此格式,但是Fresco支持。使用时,和往常一样,仅仅需要提供一个图片的URI即可,剩下的事情,Fresco会处理。
如我们运行一个名为loading.gif的图片:
- 1
- 1
当然网上还有另外的方法,就是自己去实现读取gif图片,对图片资源做拆解,这有点类似于,在很久以前,Android平台也是不支持gif的,出现了自定义view对gif图片进行拆解,然后运行image的方案。有点类似于Android的帧动画,在xml定义图片数组,然后使用Animator来加载。不过这种方法性能差。
自定义组件实现
将gif切成15张png的图片,暂且命名为loading1、loading2…. loading15。
在构造方法中初始化图片数组
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
也没渲染
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
轮播图片
每隔100毫秒切换一张图片,当数据加载完毕,清楚定时任务,并且将图片置为第一张。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
这样就实现了自己实现对gif运行的实现,不过其性能确实太差,建议使用第一种。
附:RN知识库
阅读全文
0 0
- React Native在Android平台运行gif的解决方法
- React Native在Android平台运行gif的解决方法
- React-Native 在android写不支持gif
- react-native之tabBar在Android平台上的实现
- React-Native 在android不支持gif图 -- 解决方案!(转)
- 《React-Native系列》35、 RN在Android下支持gif的另一种方案
- 《React-Native系列》35、 RN在Android下支持gif的另一种方案
- 0 如何在Android和iOS平台运行React Native应用
- Android React Native在Android Studio中执行bundleReleaseJsAndAssets 打包失败的解决方法
- react-native 在android运行时报UNEXPECTED TOP-LEVEL EXCEPTION
- React-Native在6.0以下Android手机运行调试
- React Native Android 虚拟机运行
- react native 在设备在运行时的问题
- react native gif支持
- win10环境下在android studio的模拟器中运行react native。
- 《React-Native系列》21、 解决RN在Android下不支持gif问题
- 《React-Native系列》21、 解决RN在Android下不支持gif问题
- React Native提高在模拟器上的运行速度
- poj 1014 多重背包
- poj 1422 Air Raid (最小路径覆盖白痴题)
- matlab 读取音频并显示波形
- 服务器看图详解 XManager VNC imgcat
- ios开发常用的框架
- React Native在Android平台运行gif的解决方法
- 1-1 sacc(scss)入门
- 1-2 Sass安装(windows版)
- 1-3 Sass 语法、编译、调试
- 1-4 Sass的基本特性-基础
- 1-5 Sass的基本特性-运算
- 2-1 Sass的控制命令
- 2-2 Sass的函数功能-字符串与数字函数
- 2-3 Sass的函数功能-列表函数