Анимация Huawei намного быстрее, чем на других телефонах - PullRequest
0 голосов
/ 03 февраля 2020

Я хочу добавить анимацию загрузки для моего приложения. Две точки рядом друг с другом мигают попеременно (аналогично огням на железнодорожном переезде). Это работает нормально для других телефонов, но у Huawei что-то не так с продолжительностью анимации, и эти две точки анимации начинают все больше и больше не синхронизироваться c, и внезапно они начинают мигать одновременно.

Любой была эта проблема раньше? Я могу подтвердить, что я тестировал его на Razer Phone 2, Xiaomi Mi A1 и Samsung Galaxy S7, и он работает нормально без глюков. Просто телефоны Huawei имеют эту проблему. Также версия Huawei Android идентична версии Xiaomi Mi A1, поэтому она не связана с версией.

Код:

                val anim1 = ObjectAnimator.ofFloat(dotAnimView1, View.ALPHA, 1f, 0f).apply {
                    duration = 900
                    repeatMode = ValueAnimator.REVERSE
                    repeatCount = Animation.INFINITE
                }
                val anim2 = ObjectAnimator.ofFloat(dotAnimView2, View.ALPHA, 1f, 0f).apply {
                    duration = 900
                    repeatMode = ValueAnimator.REVERSE
                    repeatCount = Animation.INFINITE
                }
                if((anim1?.isRunning == false || anim2?.isRunning == false)){
                    anim1.start()
                    post(900){ anim2.start() }
                }

1 Ответ

1 голос
/ 03 февраля 2020

Проверьте параметры разработчика -> Шкала длительности аниматора. Если он установлен на 0,5x или анимация выключена, вы можете увидеть этот странный случай. Если это так, попробуйте установить значение 1x, которое является значением по умолчанию.

...