#android #android-animation
Вопрос:
Я пытаюсь оживить изображение после рисования, но это не работает, в чем дело?
Код
btn.setOnClickListener(v - > {
ImageView imageView = new ImageView(MainActivity.this);
imageView.getViewTreeObserver().addOnGlobalLayoutListener(() - > {
imageView.setLayoutParams(new ConstraintLayout.LayoutParams(50, 50));
imageView.setImageResource(R.drawable.ic_test);
imageView.setX(btn.getX() (float) btn.getWidth() / 2 - (float) imageView.getWidth() / 2);
imageView.setY(btn.getY() (float) btn.getHeight() / 2 - (float) imageView.getHeight() / 2);
imageView.setColorFilter(Color.WHITE);
imageView.setZ(100);
ObjectAnimator objectAnimatorX = ObjectAnimator.ofFloat(imageView, "translationX", imageView.getX(), 250);
ObjectAnimator objectAnimatorY = ObjectAnimator.ofFloat(imageView, "translationY", imageView.getY(), 500);
AnimatorSet animatorSet = new AnimatorSet();
animatorSet.playTogether(objectAnimatorX, objectAnimatorY);
animatorSet.setDuration(5000);
animatorSet.start();
});
root.addView(imageView);
});
Комментарии:
1. Убедитесь
.setImageResource
, что изображение загружается и по умолчанию не белое, попробуйте изменитьroot
фон просмотра, отличный от белого, и вы увидите анимацию