現在のプロジェクトでは、StateListDrawableで描画可能な子のそれぞれを反復処理する必要があります。
StateListDrawable.javaのソースコードで、次のメソッドを見つけました。
public Drawable getStateDrawable(int index)
ただし、このメソッドのアノテーションは@hideであるため、使用できません。
それで、これを達成するための代替方法はありますか?
現在のプロジェクトでは、StateListDrawableで描画可能な子のそれぞれを反復処理する必要があります。
StateListDrawable.javaのソースコードで、次のメソッドを見つけました。
public Drawable getStateDrawable(int index)
ただし、このメソッドのアノテーションは@hideであるため、使用できません。
それで、これを達成するための代替方法はありますか?
これはかなり古い質問なので、おそらくあなたを助けるには遅すぎますが、それを見つけた他の誰かのために、私はこのコードでそれを行うことができました:
final DrawableContainer parentDrawable = (DrawableContainer) drawable;
final DrawableContainerState containerState = (DrawableContainerState) parentDrawable.getConstantState();
final Drawable[] children = containerState.getChildren();
for (int i = containerState.getChildCount(); i > 0; --i) {
doStuff(children[i - 1]);
}