关闭

教您如何让Gif动画动起来(表情)

标签: androidimportencodingstylesresourceslayout
617人阅读 评论(0) 收藏 举报
分类:

本文将为讲解Android中Gif图片播放的教程。Android 中是不支持直接使用Gif 图片关联播放帧动画,如下动画在Android 中是无法播放的,我们将教会您使用有效方法让Gif图片在Android下动起来。

使用软件:easygifanimator

下载地址:click me

<?xml version="1.0" encoding="UTF-8"?> 
<animation-list android:oneshot="false" 
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:duration="150" android:drawable="@drawable/xiu0" /> 
    <item android:duration="150" android:drawable="@drawable/xiu1" /> 
    <item android:duration="150" android:drawable="@drawable/xiu2" /> 
    <item android:duration="150" android:drawable="@drawable/xiu3" /> 
</animation-list>   

对应的item 为顺序的图片从开始到结束,duration为每张逐帧播放间隔,oneshot 为false 代表循环播放,设置为true 即播放一次即停止。

对应Activity 代码如下编写:

import android.app.Activity;  
import android.graphics.drawable.AnimationDrawable;  
import android.os.Bundle;  
import android.view.View;  
import android.view.View.OnClickListener;  
import android.widget.ImageView;  
 
public class animActivity extends Activity implements OnClickListener {  
    ImageView iv = null;  
 
    /** Called when the activity is first created. */  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
 
        iv = (ImageView) findViewById(R.id.ImageView01);  
        iv.setOnClickListener(this);  
    }  
 
    @Override  
    public void onClick(View v) {  
        // TODO Auto-generated method stub  
        AnimationDrawable anim = null;  
        Object ob = iv.getBackground();  
        anim = (AnimationDrawable) ob;  
        anim.stop();  
        anim.start();  
    }  
}  

使用AnimationDrawable 对象获得图片的图片,然后指定这个AnimationDrawable 开始播放动画

Tip:使用此方法不会默认播放,必须要有事件触发才可播放动画,如上面的通过点击监听触发动画的播放

那么如何使用图片自动播放呢?我们可以联想一下,ProgressBar 是不是默认的时候就会转,那就是那个圆形的进度条,是的。我们可以对它进行改造合它也可以自动播放,在Values 文件下新建一个styles 文件,编写如下代码 :

<?xml version="1.0" encoding="UTF-8"?> 
<resources> 
    <style name="animStyle" parent="@android:style/Widget.ProgressBar.Large"> 
        <item name="android:indeterminateDrawable">@anim/test</item> 
    </style> 
</resources>  
上面样式文件自Widget.ProgressBar.Large 为其设置动画文件,我们在XML中就可以通过设置它的样式使其为我们工作
<ProgressBar android:id="@+id/ProgressBar01" style="@style/animStyle" 
    android:layout_width="128px" android:layout_height="128px"></ProgressBar>







0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:358043次
    • 积分:4693
    • 等级:
    • 排名:第6177名
    • 原创:51篇
    • 转载:412篇
    • 译文:0篇
    • 评论:37条
    文章分类
    最新评论