Android FAB анимация не работает должным образом

Я пытаюсь rotateFloating Action Button, но я могу видеть, очень ли быстрая анимация или ничего.

Вот res/anim/rotate.xml

<?xml version="1.0" encoding="UTF-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="1600"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:fillAfter="true"
android:toDegrees="180" />

После тестирования это с простым TextView Я обнаружил, что это сработало.

И вот как я пытаюсь запустить анимацию.

final Animation rotate = AnimationUtils.loadAnimation(MainActivity.this, R.anim.rotate);
final FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            fab.startAnimation(rotate);

        }
    });

Все что я вижу стандартно onClick анимация FAB (или очень быстрая анимация, если я использую масштабную единицу)

Что я могу с этим сделать?

1 ответ

Объявление анимации из кода помогло мне. Попробуйте что-то вроде этого:

ViewCompat.animate(fab).rotation(180).setDuration(1600).start();

Кажется, что у FAB, на который нажали, есть еще одна анимация, и она переопределяет вашу анимацию.

Другие вопросы по тегам