Вот мой сценарий.
Сначала я делаю анимацию, установленную для моего вида (View.startAnimation(animationSet)
), где animationSet состоит из Translate + Rotate + Scale одновременно.Работает нормально.на этой анимации установите у меня fillAfter(true)
.Через некоторое время пользователь нажимает на кнопку, и на клике я должен запустить новую ScaleAnimation в том же виде.Поэтому, если я сделаю что-то вроде:
@Override
public void onClick(View v) {
ScaleAnimation scaleAnimation = new ScaleAnimation(mOldScaleFactor, mScaleFactor, mOldScaleFactor, mScaleFactor, mPivotX, mPivotY);
scaleAnimation.setDuration(ANIMATION_DURATION_MILIS);
scaleAnimation.setStartOffset(ANIMATION_OFFSET_MILIS);
scaleAnimation.setFillAfter(true);
v.startAnimation(scaleAnimation);
}
Вся предыдущая анимация (Translate + Rotete + Scale) будет забыта.
Как запустить новую анимацию с того места, где заканчивается старая анимация?