#java #android
При запуске приложения происходит загрузка настроек и предрасчет. Как сделать чтобы в это время на пустом экране был какой-то индикатор, что идет запуск, чтобы пользователь не волновался, что "прога висит"?
Ответы
Ответ 1
В случае если вы делаете какие-то запросы в сеть, просто долгие (но асинхронные) операции при запуске - то просто отобразите диалог-прогресс или что-то подобное. Если же вы имеете в виду эффект "белого экрана" при запуске приложения, во время которого происходят всякие инициализации всякого, то вот вам кошерное решение через стили. Создаём минимум два стиля - один основной стиль приложения, второй - для заставки. Во втором укажите картинку из ресурсов в качестве фона для окна через атрибут android:windowBackground. Также можно и ещё и android:colorPrimaryDark указать. В манифесте укажите основой стиль приложения в теге application, а для основной активити укажите второй стиль:В onCreate методе главной активити смените стиль как только начнётся непосредственное выполнение вашего кода в этом методе, т.е. сразу после super.onCreate(savedInstanceState); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTheme(R.style.AppTheme); Таким образом система, при старте вашего приложения, отобразит и будет отображать картинку вами указанную на экране до тех пор пока внутренние инициализации всякого будут выполняться (например инициализация FCM, Realm etc в onCreate класса Application может на некоторых девайсах занимать несколько секунд, что приводит к превращению приложения в "фонарик" на всё это время)
Комментариев нет:
Отправить комментарий