GifView的Jar包由四个类组成:
GifAction.java 主要用来监视GIF图片是否加载成功
GifFrame.java 里面三个成员:当前图片、延时、下张Frame的链接。
GifDecoder.java 解码线程类
GifView.java 是核心类,包含GifView构造方法,还可以设置图片源、延迟、绘制等。
GifView使用方法
1、下载GifView.jar包。
2、xml配置如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<com.ant.liao.GifView
android:id="@+id/gif1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:paddingRight="14px" />
<TextView
android:id="@+id/tsxt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:paddingRight="4px"
android:text="click the Angel" />
<com.ant.liao.GifView
android:id="@+id/gif2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false"
android:paddingLeft="14px"
android:paddingTop="4px" />
</LinearLayout>
3、java代码如下:
public class MainActivity extends ActionBarActivity implements OnClickListener {
private GifView gf1;
private GifView gf2;
private boolean f = true;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.gif);
gf1 = (GifView) findViewById(R.id.gif1);
gf1.setGifImage(R.drawable.gif1);
gf1.setOnClickListener(this);
gf2 = (GifView) findViewById(R.id.gif2);
gf2.setGifImageType(GifImageType.COVER);
gf2.setShowDimension(300, 300);
gf2.setGifImage(R.drawable.a);
gf2.setOnClickListener(this);
}
public void onClick(View v) {
if (f) {
gf1.showCover();
f = false;
} else {
gf1.showAnimation();
f = true;
}
}
}
每个方法的解释:
gf1 = (GifView) findViewById(R.id.gif1);
// 设置Gif图片源
gf1.setGifImage(R.drawable.gif1);
// 添加监听器
gf1.setOnClickListener(this);
// 设置显示的大小,拉伸或者压缩
gf1.setShowDimension(300, 300);
// 设置加载方式:先加载后显示、边加载边显示、只显示第一帧再显示
gf1.setGifImageType(GifImageType.COVER);
// 从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