帧动画
这一周就是把安卓的动画认认真真的学完了,其中安卓的动画其实就分为三类帧动画,补间动画,属性动画
帧动画的实现过程
所谓的帧动画就是图片一帧一帧的按照一定顺序播放,然后产生动画效果,这个也是电影的原理,利用人眼的视觉停留时间,让人感觉到东西在动
帧动画的实现有两种方式
1xml设置
2java代码
强烈推荐第一种xml版的,我下面也只解释xml版的实现过程
第一步:找些图片放在drawable文件夹下面
第二步:在在drawable文件夹下通过xml文件生成动画 创建的就是一个animation_list的一个xml文件,起的名字是mian1_1
在这里解释一下 这个好像和网页写法很像,首先外面一个animation-list的根标签,然后里面属性配置下,它里面包裹这一个一个的item
android:drawable是选择的图片,duration是持续的时间
第三步:在布局里面写个imagView,然后让让它的background绑定刚才写的xml
第四步:在java代码里面通过动画对象的start(),stop()方法来开启或者是停止动画。
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private Button start;
private Button stop;
private ImageView show;
private AnimationDrawable anim;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
anim = (AnimationDrawable)show.getBackground();
}
private void init(){
start = (Button)findViewById(R.id.btn_start);
stop = (Button)findViewById(R.id.btn_stop);
show = (ImageView)findViewById(R.id.iv_show);
start.setOnClickListener(this);
stop.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.btn_start:
anim.start();
break;
case R.id.btn_stop:
anim.stop();
break;
}
}
}
关键代码:
1.ImageView image = (ImageView) findViewById(R.id.image);
//找到这个imageView
2.AnimationDrawable animationDrawable = (AnimationDrawable) image.getDrawable();
//创建这个动画对象并绑定控件
3.animationDrawable.start();
//启动动画
4.animationDrawable.stop();
//关闭动画
//这个不知道什么转换的工具好用,,,图弄的很难看,本来应该是5张图片的233
总结
帧动画是最最简单动画,但是太耗资源了,开发又不常用,但是也蛮有意思的