Android基础——Animation动画

帧动画:一页一页的动画

/**
 * 资源文件创建帧动画
 * 1, 在res/drawable 文件中创建一个xml 个是的文件, 根节点为<animation-list></animation-list>
 * 2, 需要在根节点中, 添加每一帧图片
 *      <item  android:drawable="图片的id" android:duration="持续的时间 (毫秒)"/>
 * 3, 在布局页面中, ImageView 控件中引入 :  <ImageView  android:background = "帧动画资源的id"/>
 * 4, 在Activity 中, 得到动画资源管理器对象
 *      AnimationDrawable animationDrawable = (AnimationDrawable)mIv.getBackground();
 * 5, 调用      animationDrawable.start() ; 开启动画
 * 6, 调用      animationDrawable.stop(); 停止动画
 */
public class FreamAnimationActivity01 extends AppCompatActivity {

    //1, 得到动画管理器对象
    private AnimationDrawable animationDrawable;
    private ImageView mIv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_fream_animation01);

        mIv = (ImageView) findViewById(R.id.iv_id);
        //动画资源是通过页面中 android:background 属性设置, 所以只能通过ImageView 来获取
        animationDrawable = (AnimationDrawable) mIv.getBackground();
    }

    //程序一旦进入, 则开始播放动画 - --- 窗口焦点改变时调用即可  -- 扩展
    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
        if (!animationDrawable.isRunning()) animationDrawable.start();
    }

    //开始播放动画
    public void start(View view) {
        // 判断:  如果动画没有播放, 则开始播放
        if (!animationDrawable.isRunning())
        {
            animationDrawable.start();
        }

    }

    //停止播放动画
    public void stop(View view) {

        animationDrawable.stop();
    }
}
//资源文件中创建

<?xml version="1.0" encoding="utf-8"?>
<!--1, 需要在res/drawable 文件夹中, 创建xml文件, 并且提供一个根节点
        animation-list  为节点

        android:drawable=""     当前显示的图片
        android:duration=""     持续时间, 停留时间  毫秒为单位
        -->
<animation-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@mipmap/anim1" android:duration="100"/>
    <item android:drawable="@mipmap/anim2" android:duration="100"/>
    <item android:drawable="@mipmap/anim3" android:duration="100"/>
    <item android:drawable="@mipmap/anim4" android:duration="100"/>
    <item android:drawable="@mipmap/anim5" android:duration="100"/>
    <item android:drawable="@mipmap/anim6" android:duration="100"/>
    <item android:drawable="@mipmap/anim7" android:duration="100"/>
    <item android:drawable="@mipmap/anim8" android:duration="100"/>
    <item android:drawable="@mipmap/anim9" android:duration="100"/>
    <item android:drawable="@mipmap/anim10" android:duration="100"/>
    <item android:drawable="@mipmap/anim11" android:duration="100"/>
    <item android:drawable="@mipmap/anim12" android:duration="
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值