Xandr24
@Xandr24
учиться и еще раз учиться

Как сменить фрагмент (android) через 3 секунды?

Всем привет!
У меня приложение состоит из 3х главных экранов(фрагменты, которые переключаются между собой bottom navigation).
При запуске приложения открывается экран Home (показано в коде)
Вопрос в следующем. Я хочу добавить приветственный фрагмент, который будет запускаться самым первым, там я сделаю анимация и напишу что-то типа "Привет, я приложение!".
Как мне сделать так, чтобы запустить этот фрагмент первым, а самое главное, как мне задать ему время например 3 секунды, по истечению которых, запустится фрагмент Home (то есть перейдет ко фрагменту, который у меня щас при запуске прилки стоит)?
class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        var binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)
        replaceFragment(HomeFragment())

        binding.bottomNavigationView.setOnItemSelectedListener { item ->
            when(item.itemId) {
                R.id.home -> {
                    replaceFragment(HomeFragment())
                    true
                }
                R.id.profile -> {
                    replaceFragment(ProfileFragment())
                    true
                }
                R.id.settings -> {
                    replaceFragment(SettingsFragment())
                    true
                }
                else -> false
            }
        }
    }

    private fun replaceFragment(fragment: Fragment){
        val transaction = supportFragmentManager.beginTransaction()
        transaction.replace(R.id.frame_layout, fragment)
        transaction.commit()
    }
}
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
@402d
начинал с бейсика на УКНЦ в 1988
ерундой занимаетесь.
по сути вы хотите сплеш скрин. Но через фрагмент Вы не сможете добиться уменьшения времени холодного старта приложения.

Почитайте как делают все остальные.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
10 авг. 2022, в 22:56
3000 руб./за проект
10 авг. 2022, в 21:54
10000 руб./за проект
10 авг. 2022, в 21:48
3000 руб./за проект