Android One活动和带有新架构组件的多个片段

时间:2018-09-27 20:37:16

标签: android kotlin architecture

在线上,我发现有关将单个活动与多个片段结合使用的观点不一,但是现在随着Navigation Components的引入,似乎Google本身在推荐这种方法。

同样,Google在其材料设计指南中指出,底部导航组件应始终可见。使用导航组件可以轻松实现。

但是,在应用商店中浏览时,我还没有看到有人实现单个活动,多个片段模式,甚至Google本身都没有始终显示底部导航。

请问您能建议什么架构Android应用程序的方法吗?我对这一切感到非常困惑。 我正在为在健身房锻炼的人们构建一个应用程序,使他们可以存储锻炼并跟踪他们的进度。

1 个答案:

答案 0 :(得分:0)

我个人认为单一活动架构很有意义。由于许多原因,例如

1。)您的片段可以在各个地方重复使用

2。)诸如sliding panel之类的组件,例如音乐应用程序中显示歌曲及其进度的音乐只能通过一种活动架构来实现。

3。)在片段之间共享数据要容易得多(使用ViewModel),因为片段是活动的一部分。但是,由于活动是独立的组成部分,因此不能一概而论。您可以通过意图共享数据,但是大对象呢?

总而言之,我认为使用Fragments并没有真正的弊端。但这并不意味着您绝对必须始终遵循它。假设您的设置活动完全独立于应用程序的其他功能。在这种情况下,您可以绝对创建一个新活动以使其保持隔离状态。

就个人而言,我尝试在所有地方使用片段,但我认为这些功能/屏幕确实独立于其余活动。