java图片16帧动画_Java实现帧动画的实例代码
本文讲述了Java实现帧动画的实例代码。分享给大家供大家参考,具体如下:
1、效果图
2、帧动画的简要代码
private ImageView bgAnimView;
private AnimationDrawable mAnimationDrawable;
//初始化
mAnimationDrawable = new AnimationDrawable();
bgAnimView = new ImageView(mContext);
bgAnimView.setBackgroundDrawable(getAnimationDrawable(mAnimationDrawable));
params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
params.topMargin = Util.Div(176 + 58);
params.gravity = Gravity.CENTER_HORIZONTAL;
addView(bgAnimView, params);
private AnimationDrawable getAnimationDrawable(AnimationDrawable mAnimationDrawable) {
int duration = 50;
mAnimationDrawable.addFrame(mContext.getResources().getDrawable(R.drawable.loading1), duration);
mAnimationDrawable.addFrame(mContext.getResources().getDrawable(R.drawable.loading2), duration);
mAnimationDrawable.addFrame(mContext.getResources().getDrawable(R.drawable.loading3), duration);
mAnimationDrawable.setOneShot(false);
return mAnimationDrawable;
}
//动画开始
public void animLoadingStart() {
this.setVisibility(View.VISIBLE);
if (mAnimationDrawable != null) {
mAnimationDrawable.start();
}
}
//动画结束
public void animLoadingEnd() {
if (mAnimationDrawable != null) {
mAnimationDrawable.stop();
}
3、扩展:
//X轴平移
public void animY(int y, int nextY, int duration) {
LinearInterpolator ll = new LinearInterpolator(); //匀速
ObjectAnimator animator = ObjectAnimator.ofFloat(yourView, "translationY", 0, 300);//300若为负值,就是向上平移
animator.setDuration(duration);
animator.setInterpolator(ll);
animator.start();
}
//Y轴平移
public void animX(int x, int nextX, int duration) {
LinearInterpolator ll = new LinearInterpolator();
ObjectAnimator animator = ObjectAnimator.ofFloat(yourView, "translationX", x, nextX);
animator.setDuration(duration);
animator.setInterpolator(ll);
animator.start();
}
//纵向压缩0.5倍
LinearInterpolator ll = new LinearInterpolator();//匀速
ScaleAnimation scaleAnimation = new ScaleAnimation(1, 1, 1, 0.5f);//默认从(0,0)
scaleAnimation.setDuration(500);
scaleAnimation.setInterpolator(ll);
scaleAnimation.setFillAfter(true);
chartView.startAnimation(scaleAnimation);
//横向压缩0.5倍
LinearInterpolator ll = new LinearInterpolator();
ScaleAnimation scaleAnimation = new ScaleAnimation(1, 0.5f, 1, 1);//默认从(0,0)
scaleAnimation.setDuration(500);
scaleAnimation.setInterpolator(ll);
scaleAnimation.setFillAfter(true);
chartView.startAnimation(scaleAnimation);
java图片16帧动画_Java实现帧动画的实例代码相关推荐
- java 判断图片格式_Java判断上传图片格式的实例代码
先给大家介绍下java判断上传图片格式. 由于客户上传图片将png的图片的后缀名改为jpg,所以通过后缀名判断不行,用下面这个方法可以 //判断是否是JPG格式 log.info("-1-- ...
- java 生成token代码_java token生成和校验的实例代码
现在越来越多的登录方式都用到了token作为用户登录令牌,所以实现了一个token生成和校验案例. 缺点:该实现方式token是存储在内存中,不适合分布式项目,如需改为分布式项目部署,可把token存 ...
- java一维打地鼠_Java编程实现打地鼠文字游戏实例代码
控制台输入数字,与随机数匹配,匹配正确则返回"打中了!" 匹配错误则返回"太遗憾!没打中!" package hitmouse; import java.uti ...
- java ftp服务器_Java实现FTP服务器功能实例代码
FTP(File Transfer Protocol 文件传输协议)是Internet 上用来传送文件的协议.在Internet上通过FTP 服务器可以进行文件的上传(Upload)或下载(Downl ...
- java打地鼠文本代码_Java编程实现打地鼠文字游戏实例代码
Java编程实现打地鼠文字游戏实例代码 发布时间:2020-10-05 07:00:48 来源:脚本之家 阅读:91 作者:lao_huang123 控制台输入数字,与随机数匹配,匹配正确则返回&qu ...
- java get null_java 获取对象中为null的字段实例代码
下面一段简单的代码给大家分享java 获取对象中为null的字段,具体代码如下所述: private static String[] getNullPropertyNames(Object sourc ...
- java 图片合成 红色失真_Java - 处理某些图片泛红
参考博文: http://blog.csdn.net/kobejayandy/article/details/44346809 http://blog.csdn.net/shixing_11/arti ...
- java 图片合成 工具类_Java实现的图片上传工具类完整实例
本文实例讲述了Java实现的图片上传工具类.分享给大家供大家参考,具体如下: package com.gcloud.common; import javax.imageio.ImageIO; impo ...
- java图片转成字符串_JAVA将图片(本地或者网络资源)转为Base64字符串,将base64字符串存储为本地图片...
网络资源代码 import java.io.ByteArrayOutputStream; import java.io.FileOutputStream; import java.io.IOExcep ...
最新文章
- python中读取文件过程中seek()函数的使用
- 【知识发现】隐语义模型LFM算法python实现(三)
- HDU1520 Anniversary party 树形动态规划
- 线程和进程的对比之优缺点
- leetcode 852. 山脉数组的峰顶索引(二分查找)
- 苹果手机如何降级系统
- Windows学习总结(19)——Windows必备神器Cmder使用教程
- java(14) - HashMap类
- 【NAACL2021】初探无监督的多跳问答对
- element表格点击行即选中该行复选框
- python使用长ping命令_python实现ping命令小程序
- 四川信息职业技术学院计算机多媒体技术,成都市计算机多媒体技术最好学校在哪...
- O2O营销模式(Online To Offline)
- 如何彻底的卸载anaconda(包括配置文件)
- 一个80年代大学生的悲壮职业人生
- html怎么设置文字段落,第3章 用HTML设置文字与段落.ppt
- PS3视频媒体播放基本说明
- 什么是量子计算机 什么原理,量子计算机原理是什么?
- win8.1磁盘使用率100解决方法
- 分子影像有哪些最新发表的毕业论文呢?
热门文章
- python添加、修改、删除、访问类对象属性的2种方法
- 四种python 单继承的实现方式
- 5种方法实现“反转字符串”
- python 命令行参数—argparse模块的使用
- linux系统分配文件夹内存,详解Linux系统内存知识及调优方案
- windows和ubuntu虚拟机之间不能自由复制粘贴东西(要安装VMware Tools)vmware-install.pl
- python PyQt5 QtWidgets.QAbstractSlider.valueChanged()
- 【中级软考】结构化开发方法是啥,主要包含哪些内容?
- python 正则表达式 re (.*?)和(.*)的区别(贪婪模式非贪婪模式)惰性匹配
- 深入浅出python机器学习_9.1.5_通过数据预处理提高模型的准确率_MinMaxScaler