AnimatedStateListDrawable

AnimatedStateListDrawable_第1张图片
总结

备注

这个AnimatedStateListDrawable是在API21提出,针对于Android 5.0

其他Draw文章参考:
Android中Drawable整体介绍

Drawable包含一组可绘制的关键帧,其中当前显示的关键帧是基于当前状态集来选择的。 关键帧之间的动画可以可选地使用过渡元素来定义。

这个drawable可以用元素在XML文件中定义。 每个关键帧Drawable都是在一个嵌套的元素中定义的。 转换在嵌套的元素中定义

XML中



    
    
    
        
            
            
            
            
        
    

(1)

StateListDrawable的根布局是,现在是,加了一个动画。
的使用和一样,多了一个过渡标签,必须用到的是android:fromId与android:toId,表示的是下面标签从哪里开始,到哪里结束

(2)

可以理解为帧动画一样,里面包含一系列的item,使用android:drawable与 android:duration来分别设定特定的图片与展示的时间。

给View使用


代码

  private static final int[] STATE_CHECKED = new int[]{android.R.attr.state_checked};
  private static final int[] STATE_UNCHECKED = new int[]{};
 //mImageView.setImageState中参数必须是int[]。

  mImageView = (ImageView) findViewById(R.id.my_ImageView);
        mImageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (flag) {
                    mImageView.setImageState(STATE_UNCHECKED, true);
                    flag = false;
                } else {
                    mImageView.setImageState(STATE_CHECKED, true);
                    flag = true;
                }
            }
        });

效果描述

点击图片之后,会经过几个颜色变化,但是并不会停止到你设定的off状态的那个drawable,但是会停止到你设置的中你设置的最后一个上。

你可能感兴趣的:(AnimatedStateListDrawable)