您的位置:首页 > 移动开发 > Android开发

Android基础之十八显示gif动画,动态图片

2016-05-24 22:53 363 查看

Android显示动态图片





GifView 是一个为了解决android中现在没有直接显示gif的view,只能通过mediaplay来显示这个问题的项目,其用法和 ImageView一样,支持gif图片

使用方法:

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;
@Override
protected 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 stub
if(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.GifView
android:id="@+id/gif"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:paddingLeft="14px"
android:paddingTop="4px"
/>

</RelativeLayout>




这个jar包可以去百度下载


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: