Разве ширина не должна измениться после того, как я анимирую свойство scaleX? Я заметил, что интерактивная область уменьшается, когда я уменьшаю ширину представления, поэтому я думаю, что ширина должна быть адаптирована. Но когда я вызываю view.getWidth(), я все равно получаю начальное значение.
Log.d(TAG, "" + getWidth()); //Initial value
setPivotX(getWidth() / 2);
ObjectAnimator animator = ObjectAnimator.ofFloat(this, View.SCALE_X, 1.0f, 0.8f);
animator.setInterpolator(new DecelerateInterpolator(1));
animator.addListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animation) {
}
@Override
public void onAnimationEnd(Animator animation) {
Log.d(TAG, "" + getWidth()); //Initial value :(
}
@Override
public void onAnimationCancel(Animator animation) {
}
@Override
public void onAnimationRepeat(Animator animation) {
}
});
animator.start();