1

新的可绘制选择器AnimatedStateListDrawable允许在选择器从一种状态变为另一种状态时定义动画。
在文档中以及到目前为止的 Web 中,只有这个新类的 XML 定义示例。
我的问题是:我想以编程方式创建它:

    AnimatedStateListDrawable astld= new AnimatedStateListDrawable();
    astld.addState(KEY_STATE_PRESSED, pressedKey);
    astld.addState(StateSet.WILD_CARD, normalKey);
    astld.addTransition(??????????????);

但我找不到在哪里可以获取或设置转换所需的状态 ID(fromIdtoId)。

public void addTransition (int fromId , int toId , T transition , boolean reversible )
在 API 级别 21 中
添加 在关键帧之间添加新的过渡。

参数:
fromId开始关键帧的唯一标识符
toId结束关键帧
过渡的唯一标识符用作过渡的 Animatable drawable,不能为 null
可逆是否可以反转过渡

4

1 回答 1

0

我终于发现有一个新方法addState(),签名不同,其中包括 ID 的参数。

public void addState (int[] stateSet, Drawable drawable, int id)
在 API 级别 21 中
添加 将新的可绘制对象添加到关键帧集。

参数
stateSet与关键帧关联的资源 ID 数组
drawable处于指定状态时显示的可绘制对象,不能为空
id关键帧的唯一标识符

于 2016-03-10T16:02:40.850 回答