After this, I need to add another"> After this, I need to add another"> After this, I need to add another" />

анимация анимации анимации android

Хорошо. Я создал эту анимацию для небольшого изображения для перевода из «0%» в «50%» в xml ...

<?xml version="1.0" encoding="utf-8"?>


    <translate
        android:duration="400"
        android:fromXDelta="0%"        
        android:toXDelta="+50%" />    

After this, I need to add another sequential animation which would change the Y co-ordinate from "0%" to "50%".. I tried adding another but it did not work... What should I do to get sequential animation?

1
nl ja de

2 ответы

Вы можете использовать android: startOffset для задержки анимации. Задержка в миллисекундах до запуска анимации, как только начнется время начала. Должно быть целочисленное значение, например «100». - «developer.android.com»

Другой способ - вы можете использовать AnimationListener для «прослушивания» анимаций и делать все, что хотите.

This link is useful for you: How to run several translate animations sequentially?

2
добавлено
элегантное решение
добавлено автор BLOB, источник

I'm not completly sure what you really want to do, but if you want to "translate" both the "x" and "y" at the same time simply add android:fromYDelta="0%" and android:toYDelta="+50%" to your existing <translate>.

Если вы хотите «перевести» значения Y после X, вам понадобится новый XML-файл, который вам нужно будет вызвать, когда закончите X.

Быстрый, непроверенный пример:

mAnimatedView = findViewById(R.id.viewToAnimate);

mAnimX = (TranslateAnimation) AnimationUtils.loadAnimation(mContext, R.anim.aX);
mAnimY = (TranslateAnimation) AnimationUtils.loadAnimation(mContext, R.anim.aY);

mAnimX.setAnimationListener(new AnimationListener(){
    @Override
    public void onAnimationEnd(Animation animation) {
        if (mAnimatedView) {
            mAnimatedView.startAnimation(mAnimY);
        }
    }
    @Override
    public void onAnimationRepeat(Animation animation) {
    }
    @Override
    public void onAnimationStart(Animation animation) {
    }
}); 
mAnimY.setAnimationListener(new AnimationListener(){
    @Override
    public void onAnimationEnd(Animation animation) {
        if (mAnimatedView) {
            mAnimatedView.startAnimation(mAnimX);
        }
    }
    @Override
    public void onAnimationRepeat(Animation animation) {
    }
    @Override
    public void onAnimationStart(Animation animation) {
    }
});

mAnimatedView.startAnimation(mAnimX);

Надеюсь, что это помогает и достаточно ясно.

1
добавлено
Нет, это не решение поставленного вопроса. Это требует вмешательства программы. Я упоминаю об этом, потому что у меня тоже есть кошмар, пытающийся получить последовательные анимации из одного xml для работы. Точка множеств и вещей, таких как startOffset, предполагают, что это должно быть довольно легко. Увы, нет и плохо документировано.
добавлено автор RichieHH, источник
достаточно ясно, но мне требуется добавить новый xml для каждой последовательности.
добавлено автор BLOB, источник
Mobile Dev Jobs — вакансии и аналитика
Mobile Dev Jobs — вакансии и аналитика
6 187 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению iOS, Android, Xamarin и т.д. ВАЖНО: Правила публикации и правила канала: Ссылка – https://telegra.ph/Pravila-oformleniya-vakansij-i-rezyume-11-09-2

Android Developers
Android Developers
4 476 участник(ов)

Общаемся на темы, посвященным Android-разработке, SDK, Kotlin, Realm и т.д.

Android Architecture
Android Architecture
2 186 участник(ов)

Русскоязычный чат по архитектуре в андроид приложениях. Подробнее: http://telegra.ph/Android-Architecture-12-24

rus-speaking/android
rus-speaking/android
1 705 участник(ов)

Основной чат по Android разработке (вопрос-ответ). ПРАВИЛА: bit.ly/andr-rules. NEWS: bit.ly/AnrdResId ЧАТЫ: Основной: bit.ly/andr-main IDE, сборка, Git, сервисы: bit.ly/andr-tools Оффтоп: bit.ly/andr-offtop Конференции, события: bit.ly/andr-events Вакансии, найм: bit.ly/andr-job Архитектура: bit.ly/andr-patterns Rx: bit.ly/andr-rx Тестирование: bit.ly/andr-test Kotlin: bit.ly/andr-kotlin Хаmarin: bit.ly/andr-xamarin За мат, спам, агрессию, предложения о работе, оффтоп в этом канале - бан на сутки и более ☢☢☢

Android Dev Подкаст
Android Dev Подкаст
1 325 участник(ов)

Комната для обсуждения Android Dev подкаста apptractor.ru/AndroidDev/ Общее обсуждение Android: https://t.me/android_ru Остальные чаты про Android: http://t.me/devChats Наши новости https://t.me/androiddevpodcast_news

Android Guards
Android Guards
602 участник(ов)

Обсуждение любых вопросов касающихся безопасности Android. - Защита системы и приложений - Уязвимости и эксплойты - Вредоносное ПО - Копание в кишках системы и приложений (RE)

Android JOB
Android JOB
466 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению Android (full-time, part-time, remote и разовые подработки)

AndroidDev :: Разработка. It's Android time now!
AndroidDev :: Разработка. It's Android time now!
458 участник(ов)

It's Android time now! Чат разработчиков Android. Вакансии, резюме и информацию о митапах размещать можно. Публикацию скрытой и явной рекламы ваших каналов и сайтов после получения разрешения от @olegushakov

Aandroid Talks!
Aandroid Talks!
212 участник(ов)

Чат об общих вопросах по ОС Android. Чат для разработки под андроид - pro.android: https://t.me/joinchat/AAAAAEKIFKnmRT9cMebb9w

Android Rus
Android Rus
68 участник(ов)