新的可绘制选择器AnimatedStateListDrawable
允许在选择器从一个状态转到另一个状态时定义动画。
在文档中以及到目前为止的 Web 中,只有这个新类的 XML 定义示例。
我的问题是:我想以编程方式创建它:
AnimatedStateListDrawable astld= new AnimatedStateListDrawable();
astld.addState(KEY_STATE_PRESSED, pressedKey);
astld.addState(StateSet.WILD_CARD, normalKey);
astld.addTransition(??????????????);
但我找不到在哪里可以获取或设置转换所需的状态 ID(fromId 和 toId)。
public void addTransition (int fromId, int toId, T transition, boolean able)
在 API 级别 21
中添加 在关键帧之间添加新过渡。参数:
来自标识起始关键帧
的唯一标识符 到ID结束关键帧
的唯一标识符 过渡用作过渡的可动画可绘制对象可能不为 null
可逆过渡是否可以逆转
我终于发现有一个addState()
具有不同签名的新方法,其中包括 ID 的参数。
public void addState (int[] stateSet, Drawable drawable, int id)
在 API 级别 21
中新增向关键帧集添加新的可绘制对象。参数
状态集要与关键帧关联的资源 ID 数组
可绘制处于指定状态时要显示的可绘制对象可能不是 null
id 关键帧的唯一标识符