Jetpack 组合导航架构没有片段?

时间:2021-01-02 18:24:58

标签: android-fragments navigation android-jetpack-compose

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

我说在使用 Jetpack Compose 时,具有 0 个片段的单活动架构比具有多个片段的单活动架构更受欢迎是对的吗?

我知道我们仍然可以以这种方式使用片段和 Jetpack 组合:

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()
        }
    }
}

1 个答案:

答案 0 :(得分:2)

是的,你说得对。不使用片段是首选。您可以使用 NavHost 来声明您的导航图。