Intereting Posts
Невозможно добавить зависимость XStream к проекту Android Studio Заголовок маркера Android Google на арабском языке, показывающий пробел Google Analytics v4 – данные не отображаются на панели управления BackupAgent.onRestore не вызывается при повторной установке приложения. BUT вызывается для команды восстановления bmgr. Версия Android SDK для редакторов 12 имеет проблемы с Proguard => преобразование ошибки в формат Dalvik с ошибкой 1 Включить аварийный режим безопасности Автоматическая прокрутка в режим ввода фокуса Завершено с нулевым значением выхода Скорость чтения SharedPreferences Какова роль адаптеров в Android? Кнопки на скользящем ящике? – Android Могу ли я подражать wi-fi-соединению для тестирования Wi-Fi Direct? Студия Android не признает библиотеку Facebook Ошибка хоста вкладки фрагмента: исключение, возникшее во время рендеринга: нет вкладки, известной для тега null Навигационный ящик – макет ящика не может быть создан

Пауза / возобновление анимации в API менее 19 (Android)?

Я понимаю, что методы паузы и возобновления объектов objectanimator доступны только для API: 19. Однако, поскольку ни у меня, ни у половины пользователей Android нет этого API, есть ли альтернатива, чтобы заставить вашу анимацию остановиться, а затем возобновить ее из одного и того же состояния, а не начинать с начала? Любая помощь будет принята с благодарностью.

В моем проекте мне пришлось сделать анимацию поворота (это будет пауза и возобновление с той же / конечной позиции), и я решил ее, получив текущее время аниматора (когда анимация заканчивается / когда я нажимаю паузу) После запуска аниматора я устанавливаю «setCurrentPlayTime (с конечным временем)». Для получения текущего времени я использую getCurrentPlayTime (); И для установки времени я использую setCurrentPlayTime () класса ObjectAnimator.

Ссылки: http://developer.android.com/reference/android/animation/ValueAnimator.html#setCurrentPlayTime(long) http://developer.android.com/reference/android/animation/ValueAnimator.html#getCurrentPlayTime ()

private ObjectAnimator mObjectAnimator; private long mAnimationTime; private void stopAnimation() { if(mObjectAnimator != null) { mAnimationTime = mObjectAnimator.getCurrentPlayTime(); mObjectAnimator.cancel(); } } private void playAnimation() { if (mObjectAnimator != null) { mObjectAnimator.start(); mObjectAnimator.setCurrentPlayTime(mAnimationTime); } }