Спасибо @AndreyNick, это работает как шарм!Я также использовал его для LayerDrawable для анимации только одного Drawable (слоя) в нем.Это код, может быть, кому-то может пригодиться:
Drawable[] layers = new Drawable[2];
layers[0] = new ColorDrawable(Color.RED);
BitmapDrawable bd = new BitmapDrawable(activity.getResources(), bitmap);
bd.setGravity(Gravity.CENTER);
Drawable drawLogo = bd;
layers[1] = drawLogo;
LayerDrawable layerDrawable = new LayerDrawable(layers);
layers[1].setAlpha(0);
((AppCompatActivity) activity).getSupportActionBar().setBackgroundDrawable(layerDrawable);
ObjectAnimator animator = ObjectAnimator.ofPropertyValuesHolder(layers[1], PropertyValuesHolder.ofInt("alpha", 255));
animator.setTarget(layers[1]);
animator.setDuration(2000);
animator.start();
Мне нужно было создать рисование для панели действий с:
- слоем (0), который являетсяцвет фона и
- слой (1) с логотипом посередине (с исчезающей анимацией)
Я загружаю логотип с Пикассо, и мне нравится анимировать его, когда естьбыл загружен (точечный рисунок onBitmapLoaded callback).
Надеюсь, это может помочь!