标签:android animation drawable 帧动画
Android-帧动画
一 帧动画
又叫做Drawable Animation,就是不同对象之间过渡事件比较快形成的动画,也是动画片的原理
二 话不多说,看Demo
下面例子是实现4张图片的切换动画效果,比较简单
1,在drawable中定义4张图片的xml以及过渡时间
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="true">
<item android:drawable="@drawable/gesture1" android:duration="200"></item>
<item android:drawable="@drawable/gesture2" android:duration="200"></item>
<item android:drawable="@drawable/gesture3" android:duration="200"></item>
</animation-list>
2,定义显示图片的layout布局
<?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:orientation="vertical" >
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<Button
android:id="@+id/buttonAnimList"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Ok" />
</LinearLayout>
3,定义主Activity类
public class MyAnimationListActivity extends Activity
{
private AnimationDrawable mAnimationDrawable;
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
//设置布局文件
setContentView(R.layout.my_animlist_layout);
//得到布局的ImageView对象
ImageView _imageView = (ImageView)findViewById(R.id.imageView);
//得到ImageView的背景
_imageView.setBackgroundResource(R.drawable.my_anim_list);
//利用AnimationDrawable来完成帧动画
mAnimationDrawable = (AnimationDrawable)_imageView.getBackground();
//得到按钮对象
Button _buttonList = (Button)findViewById(R.id.buttonAnimList);
//设置点击事件
_buttonList.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
// TODO Auto-generated method stub
//动画只播放一次,设置为true
mAnimationDrawable.setOneShot(true);
//动画开始
mAnimationDrawable.start();
}
});
}
}
运行程序,点击按钮,图片相互切换,且只播放一次
版权声明:欢迎交流指正文章的错误,必定虚心接受,QQ872785786
标签:android animation drawable 帧动画
原文地址:http://blog.csdn.net/qq_22075977/article/details/46849995