Android - 以编程方式应用TransitionDrawable - 问题

时间:2014-03-14 08:36:19

标签: android transition shapedrawable transitiondrawable

当用户选择不同的选项时,我尝试更改背景颜色。

为此我在运行时创建TransitionDrawable。它的工作正常。但 我的问题是当我使用setDrawableBackground()更改视图背景时,我的一半屏幕视图被形状drawable覆盖。

这是我的TransitionDrawable代码,

public static TransitionDrawable getTransitionDrawable (ShapeDrawable start, ShapeDrawable end){
    ShapeDrawable[] mDrawableSet = {start,end};
    TransitionDrawable tDrawable = new TransitionDrawable(mDrawableSet);
    return tDrawable;
}

这是我的ShapeDrawble创建代码

    public static ShapeDrawable getShapeDrawable (int[] colors){
      ShapeDrawable mDrawable = new ShapeDrawable(new RectShape());
      SweepGradient sg = new SweepGradient(0, 1,colors , null);
      mDrawable.getPaint().setShader( new SweepGradient(0, 0,colors , null));
      return mDrawable;
}

我在下面写了代码来应用颜色过渡

holder.setBackgroundDrawable(AnimUtils.DEFAULT_TO_SUCCESS_TRANSITION);
                    transition = (TransitionDrawable) holder
                            .getBackground();
                    transition.startTransition(2000);

帮我解决问题...

先谢谢。

0 个答案:

没有答案