Kotlin: загрузка / инициализация следующего действия в фоновом режиме - PullRequest
0 голосов
/ 24 апреля 2020

У меня есть приложение инициализации в моем приложении, которое отображает lo go, затем я показываю свое следующее действие, используя

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState) // Call the parent class function
    setContentView(R.layout.activity_launcher)

    // This starts a new co-routine
    // it is important to do it this way, in order to show the UI _before_
    // all the initialization happens, otherwise launcher is pointless
    GlobalScope.launch {
        ...
        [initialization]
        ...
        startActivity(ActivityTwo)
    }
}

Переход занимает около трех секунд из-за всего кода, который выполняется внутри onCreate принадлежащий ActivityTwo . Есть ли способ «создать» второе занятие за кадром, а затем показать его. Я не против, если приложение остается на экране инициализации в течение этих 3 секунд, но переход белого цвета выглядит действительно ужасно.

1 Ответ

0 голосов
/ 24 апреля 2020

onCreate метод фактически создает вашу активность. Вы должны делать какие-то тяжелые вычисления, если ваша активность дергается во время рендеринга. Если вы не удовлетворены переходом между двумя действиями, примените анимацию между ними.

...