首页 > 解决方案 > 屏幕旋转时如何加载另一个用户界面?

问题描述

我使用导航控制器来加载片段。当用户旋转屏幕时,我需要在同一个屏幕上加载两个片段。我不知道如何实现这一目标。有人可以帮我吗?我添加了一些我尝试过的代码。

override fun onConfigurationChanged(newConfig: Configuration) {
        super.onConfigurationChanged(newConfig)
        if(newConfig.orientation==Configuration.ORIENTATION_LANDSCAPE){
            supportFragmentManager.beginTransaction()
                .replace(R.id.fragment, FirstFragment())
                .commitAllowingStateLoss()
        }else{
            val navController = findNavController(R.id.nav_host_fragment_content_main)
            appBarConfiguration = AppBarConfiguration(navController.graph)
            setupActionBarWithNavController(navController, appBarConfiguration)
        }
    }

这是纵向用户界面

这是我想要实现的横向 UI

切换到横向到纵向后,它看起来像这样 .

标签: androidandroid-fragmentsnavigationandroid-orientation

解决方案


推荐阅读