Android基础之十八显示gif动画,动态图片
Android显示动态图片
使用方法:
1-把GifView.jar加入你的项目。
2-在xml中配置GifView的基本属性,GifView继承自View类,和Button、ImageView一样是一个UI控件。如:
<com.ant.liao.GifView android:id="@+id/gif2"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:paddingTop="4px" android:paddingLeft="14px" android:enabled="false" />
3-在代码中配置常用属性:
// 从xml中得到GifView的句柄
gf1 = (GifView) findViewById(R.id.gif1);
// 设置Gif图片源
gf1.setGifImage(R.drawable.gif1);
// 添加监听器
gf1.setOnClickListener(this);
// 设置显示的大小,拉伸或者压缩
gf1.setShowDimension(300, 300);
// 设置加载方式:先加载后显示、边加载边显示、只显示第一帧再显示
gf1.setGifImageType(GifImageType.COVER);
GifView的Jar包共有四个类:
GifAction.java 观察者类,监视GIF是否加载成功
GifFrame.java 里面三个成员:当前图片、延时、下张Frame的链接。
GifDecoder.java 解码线程类
GifView.java 主类,包括常用方法,如GifView构造方法、设置图片源、延迟、绘制等。
package com.example.gifdemo;import com.ant.liao.GifView;
import com.ant.liao.GifView.GifImageType;import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;public class MainActivity extends Activity {private GifView gf;private boolean f = true;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);gf = (GifView)findViewById(R.id.gif);gf.setGifImageType(GifImageType.COVER);//gf.setShowDimension(600, 600);gf.setGifImage(R.drawable.chi);gf.setOnClickListener(new OnClickListener() {public void onClick(View v) {// TODO Auto-generated method stubif(f){gf.showCover();f = false;}else{gf.showAnimation();f = true;}}});}/* public void onClick(View v) {if(f){gf.showCover();f = false;}else{gf.showAnimation();f = true;}}*/}
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context=".MainActivity" ><com.ant.liao.GifViewandroid:id="@+id/gif"android:layout_width="wrap_content"android:layout_height="wrap_content"android:enabled="false"android:paddingLeft="14px"android:paddingTop="4px"/></RelativeLayout>
这个jar包可以去百度下载
Android基础之十八显示gif动画,动态图片相关推荐
- QT5开发及实例学习之十八显示Qt5 SVG格式图片
SVG 的英文全称是 Scalable Vector Graphics,即可缩放的矢量图形.它是由万维网络联盟 ( World Wide Web Consortium, W3C ) 在 2000 ...
- Android绘图Canvas十八般武器之Shader详解及实战篇(上)
本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 前言 Android中绘图离不开的就是Canvas了,Canvas是一个庞大的知识体系,有java层的,也有jni层深入到Frame ...
- Android绘图Canvas十八般武器之Shader详解及实战篇(下)
前言 上一篇<Android绘图Canvas十八般武器之Shader篇(上)> 我们知道了Bitmap的用法,及TileMode的详细情况.接下来,这一篇作为整个知识体系的下半部要讲的是S ...
- android 编辑9图片,Android基础入门教程——1.6 .9(九妹)图片怎么玩
Android基础入门教程--1.6 .9(九妹)图片怎么玩 Android基础入门教程 1.本节引言: 可能有的一些疑问: 1.什么是.9图片? 答:图片后缀名前有.9的图片,如pic1.9.png ...
- Android基础入门教程——1.6 .9(九妹)图片怎么玩
转自:http://blog.csdn.net/coder_pig/article/details/46963687 Android基础入门教程--1.6 .9(九妹)图片怎么玩 标签(空格分隔): ...
- Android进阶(二十八)上下文菜单ContextMenu使用案例
上下文菜单ContextMenu使用案例 前言 回顾之前的应用程序,发现之前创建的选项菜单无法显示了.按照正常逻辑来说,左图中在"商品信息"一栏中应该存在选项菜单,用户可进行分享等 ...
- JavaSE基础知识(十八)--Java多态之向上转型(多态初步)
Java SE 是什么,包括哪些内容(十八)? 本文内容参考自Java8标准 再次感谢Java编程思想对本文的启发! 开篇一句很重要的话:在面向对象的程序设计语言中,多态是继数据抽象和继承之后的第三种 ...
- android各目录大小,Android 基础篇 — 放不同drawable文件夹中图片的大小
我们接着上篇文章Android 基础篇 - 不同DPI取哪个本地文件夹中的资源 讲,文末尾提到一个问题,为什么不同drawable文件夹中的图片大小在终端设备会不一样? 1 准备 在drawable- ...
- 物流基础知识(十八)
流通加工的概念 一.流通加工的概念 流通加工是流通中的一种特殊形式. 商品流通是以货币为媒介的商品交换,它的重要职能是将生产及消费(或再生产)联系起来,起"桥梁和纽带"作用,完成商 ...
最新文章
- Caffe 学习笔记1
- kafka 报错:kafka server:Message was too large ,server rejected it to avoid allocation
- 近代数字信号处理实验-DFT分析信号的频谱
- sklearn adaboost_集成学习-从零推导和实现adaboost与3D可视化
- ROS笔记(6) ROS通讯机制
- 方阵和的行列式、方阵行列式的和
- android模拟点击滑动,模拟Android的view点击和滑动监听
- Android RecyclerView批量更新notifyItemRangeChanged
- 洛谷1123 取数游戏
- [Crypto/CTF]CTF Crypto 包函数和工具总结[ 2021/10/30更新]
- 卫星控制类操作系统VAX/VMS简介
- 数据挖掘-基于随机森林模型的企业偷漏税纳税人识别
- golang 实现 tcp-聊天室
- 錦匯行商業管理公司对于西昌商铺一条街公开秩序管理方案
- raspberry树莓派用USB麦克风录音,只有杂音的问题
- Anaconda环境的创建、激活、删除和管理
- 【Solidity】函数returns多个值的接收方式
- T 检验 (T test)
- 一文读懂5G智慧教育:42个应用场景如何改变教育
- 优达的Python入门课