帧动画的实现

来源:互联网 发布:obs直播软件ipad 编辑:程序博客网 时间:2024/06/05 16:54

一.帧动画

1.首先drawable里面放上你的动画的每一帧(Easy GIF Animator可以吧gif图片分帧)


2. drawable下的资源文件 anim_gif.xml

<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android"    android:oneshot="false">    <!--oneshot 单次,false代表动画结束时开始循环-->    <item        android:drawable="@drawable/a0"        android:duration="200" />    <item        android:drawable="@drawable/a1"        android:duration="200" /></animation-list>

3.布局文件activity_main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:gravity="center"    android:orientation="vertical">    <ImageView        android:id="@+id/iv"        android:layout_width="match_parent"        android:layout_height="match_parent"        android:background="@drawable/anim_gif" /></LinearLayout>

4.MainActivity

package com.cwj.love;import android.graphics.drawable.AnimationDrawable;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.ImageView;import android.widget.Toast;public class MainActivity extends AppCompatActivity {    private ImageView iv;    private AnimationDrawable anim;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        Toast.makeText(this, "别摸我,摸我我会心跳加速哦!", Toast.LENGTH_SHORT).show();        iv = (ImageView) findViewById(R.id.iv);        // 提取帧动画        anim = (AnimationDrawable) iv.getBackground();        iv.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                //开始动画                anim.start();                Toast.makeText(MainActivity.this, "哎呦,心跳加速了,我爱上你了!", Toast.LENGTH_SHORT).show();            }        });    }}


原创粉丝点击