1、使用帧动画。但是一个动画需要添加很多张图片,apk体积必然变大,并且还要根据不同的尺寸进行适配。

2、用 Gif。但是使用Gif 占用空间较大,同样需要为各种屏幕尺寸、分辨率做适配,同时原生Android本身是不支持gif直接展示的。

3、编码加图片辅助。这种方式繁琐并且不易维护,稍作修改就要推倒重新来过。

4、Android 5.x 之后提供了对 SVG 的支持,通过 VectorDrawable、AnimatedVectorDrawable 的结合可以实现一些稍微复杂的动画。

矢量图在很久很久以前就已经应用起来了,是一种基于xml的图像,因为图片不提供具体的像素,只提供的是绘图的指令,所以好处是 占用内存非常小,性能高,可以任意缩放而不会失真,但是缺点也很明显,没有位图表达的色彩丰富。 然而现在app风格越来越扁平, 拟物化已经成了过去,矢量图成了越来越多人的选择。

阿里巴巴UX矢量库

用法:https://blog.csdn.net/suyimin2010/article/details/84174540

5、Lottie。不使用大量图片,甚至零图片,不占空间,不占内存,不需要适配,且易于维护,简单而且方便

Lottie是Airbnb开源的一个支持 Android、iOS 以及 ReactNative,利用json文件的方式快速实现动画效果的库。
Lottie项目地址:https://github.com/airbnb/lottie-android

Android 图片动画相关推荐

  1. android 点击图片动画效果,Android仿微信图片点击全屏效果

    废话不多说,先看下Android图片点击全屏效果: 先是微信的 再是模仿的 先说下实现原理,再一步步分析 这里总共有2个Activity一个就是主页,一个就是显示我们图片效果的页面,参数通过Inten ...

  2. Android 图片弹跳动画

    这几天看到一个小动画,觉得有点意思,就自己实现来看看,先看效果图 OK,这个效果基本功能就是,一个图片,从顶部掉下来,完后弹几下,再停止,实现起来还是比较简单的,不过也走了点小弯路,这里记录下. 有段 ...

  3. android 放大镜动画,Android在图片上进行放大镜效果(放大镜形状)

    Android 图片上放大镜效果实现 1.[文件] ZoomView.java ~ 5KB     下载(55) package com.study.hello; import android.con ...

  4. android图片、动画、画布学习

    详解Paint的setXfermode(Xfermode xfermode) https://www.cnblogs.com/tianzhijiexian/p/4297172.html Android ...

  5. android 三维动画效果,9款令人惊叹的HTML5 3D动画应用

    原标题:9款令人惊叹的HTML5 3D动画应用 之前我们已经向大家分享了很多HTML5动画应用了,大部分都非常炫酷,也有一小部分是很实用的.今天我们要向各位HTML5动画爱好者介绍更多的HTML5 3 ...

  6. 【学习笔记】Android视图动画学习

    2019独角兽企业重金招聘Python工程师标准>>> 1.Android View动画框架 Animation框架定义了透明度.旋转.缩放和位移几种常见的动画. 实现原理:每次绘制 ...

  7. android矢量动画 充电,android矢量动画

    android矢量动画! 直接来个例子就明白了!(这里我把与动画无关的属性都用-表示) 首先你要有个矢量图 比如这个矢量图xml文件叫"vector1",文件在res\drawab ...

  8. Android图片缓存框架Glide

    Android图片缓存框架Glide Glide是Google提供的一个组件.它具有获取.解码和展示视频剧照.图片.动画等功能.它提供了灵活的API,帮助开发者将Glide应用在几乎任何网络协议栈中. ...

  9. android image 位移动画_深入理解Android之动画

    Android 里动画从用途上讲,可以分为三类View Animation(View动画)又称 Tween Animation(补间动画).Drawable Animation(帧动画) 和 Prop ...

最新文章

  1. 没有找到MFC80D.DLL,因此这个应用程序未能启动。重新安装应用程序可能会修复问题。...
  2. axure9 邮件点击效果_总是收到无关的工作邮件?这个有意思的工具可以帮你消灭它们...
  3. 【BZOJ1146】【CTSC2008】网络管理 [整体二分]
  4. ELK 删除索引只保留10天
  5. MongoDB for PHP扩展操作类
  6. LINUX下用脚本实现JDK+TOMCAT
  7. 实现深拷贝的几种方法
  8. android.support.v7 fragme,打造最强RecyclerView侧滑菜单,长按拖拽Item,滑动删除Item
  9. caffe安装_【开源框架】caffe图像分类从模型自定义到测试
  10. 对离散点进行积分的python程序实现_Stochastic Calculus(Python)(四)
  11. Rust : chrono库,DateTime、FixedOffset等
  12. VC6++配置汇编环境和第一个简单程序
  13. 【支付宝】支付宝ISV申请方法
  14. 语音增强算法研究系列笔记 - 语音噪声分类及特点
  15. 呼叫中心客服人员的秘密生活:同理心永远不会让你遭殃
  16. python编程实现人民币和美元的互相转换_java人民币转换美元的实验报告
  17. idead导入maven多模块
  18. 计算机玩游戏 突然黑屏 又亮了,显示器黑一下又亮了怎么回事?解决显示器黑屏一会又亮一会又黑...
  19. 有哪些在线尺子测量工具?这个工具值得试试
  20. 计算机毕业设计(77)php小程序毕设作品之维修保养汽车小程序系统

热门文章

  1. Java_八大Wrapper类
  2. 进程控制—终止和等待
  3. GTLC非官方“服用”指南
  4. 传感器实验——485噪声模块
  5. 冰冰学习笔记:扫雷游戏的实现:展开,排查,标记,取消标记
  6. 全面NodeJs学习教程
  7. Docker安装与使用
  8. java报错出现未知源,java.io.FileInputStream.(未知来源)
  9. 异地查封保管、异地看样 京东物流助力司法执行
  10. 神龙激活 错误代码_windows错误代码大全