Jetpack 构建无片段导航架构?

问题描述 投票:0回答:2

我对新的 Jetpack 撰写导航组件 androidx.navigation:navigation-compose 有点困惑,该组件记录在 https://developer.android.com/jetpack/compose/navigation

我说的对吗?使用 Jetpack Compose 时,具有 0 片段的单活动架构优于具有多个片段的单活动架构?

我知道我们仍然可以以这种方式使用fragments 和 Jetpack compose :

class MyFragment: Fragment() {
    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View {
        return ComposeView(requireContext()).apply{
            setContent {
                MyFragmentComposable()
            }
        }
    }
}

但是我想确保当使用 androidx.navigation:navigation-compose 时,我们不应该再使用fragment,像这样开始:

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            MyApp()
        }
    }
}
android-fragments navigation android-jetpack-compose
2个回答
12
投票

是的,你是对的。最好不使用片段。您可以使用

NavHost
来声明您的导航图。


0
投票

android 开发者网站有 2 种可能的方法来实现导航,建议首先使用带有基于组合和视图的屏幕的片段,然后逐渐摆脱片段并就位进行组合。

© www.soinside.com 2019 - 2024. All rights reserved.