Android FAB анимация не работает должным образом
Я пытаюсь rotate
Floating 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, на который нажали, есть еще одна анимация, и она переопределяет вашу анимацию.