我有点混淆它的动机和概念,这是我的不确定性:
> Android导航架构组件是否旨在消除在单个应用程序中使用多个Activity的需要?这意味着,整个应用程序只需要一个单一活动,所有其他页面将是片段?
>在应用程序中使用多个活动,但同时使用Android导航架构组件导航片段实际上违反了Android导航架构组件的目的吗?
问题2的示例场景:
解决方法
但是,从Google I/O talk on Navigation引用/转述:
What is my Activity actually meant to do?
Right now,some apps are very Activity-heavy,some are Fragment-heavy,or completely in a different system. We’re moving towards a model where the Activity is more just an entry point into your app,rather than it being the owner of the content of your app. It’s actually just going to store global state,for example global navigation like a navigation drawer or the bottom bar.
所以谷歌确实建议你的应用只有几个活动,因为你只需要它们作为入口点.例如,您可以使用从启动器打开的另一个,以及通过深层链接打开的另一个.之后,当您的应用程序启动时,您可以使用Fragments完成其中的所有其他操作.
总结并直接回答您的两个问题:
>导航架构组件本身并不是“旨在消除使用多个活动的需要”,而是谷歌建议您在使用它时所做的事情.
>您绝对可以使用多个活动和多个碎片混合在一起.如果您愿意,您甚至可以使用纯粹基于视图的导航的单个活动.全取决于你.如果您发现导航库与您构建应用程序的方式结合使用,请使用它.