Android 片段/活动最佳实践

Android 片段/活动最佳实践,android,android-fragments,Android,Android Fragments,我按照以下方式设置了我的应用程序,我很好奇它是否被认为是“最佳实践”。我有两个活动和两个片段。活动1启动并立即使用片段1显示项目的RecyclerView。在片段中单击一个项目,通过一个接口将其传回活动,出现一些逻辑并启动活动2,活动2立即使用片段2显示所选项目的详细信息 我这样做是因为A)我喜欢应用程序中活动的逻辑流,2)我需要创建平板电脑布局,在其中我可以使用这两个片段来填充屏幕 我越是关注这件事,我就在想,为什么不让一个活动来管理这两个片段呢?活动1启动片段1,单击项目,信息返回活动,Fr

我按照以下方式设置了我的应用程序,我很好奇它是否被认为是“最佳实践”。我有两个活动和两个片段。活动1启动并立即使用片段1显示项目的RecyclerView。在片段中单击一个项目,通过一个接口将其传回活动,出现一些逻辑并启动活动2,活动2立即使用片段2显示所选项目的详细信息

我这样做是因为A)我喜欢应用程序中活动的逻辑流,2)我需要创建平板电脑布局,在其中我可以使用这两个片段来填充屏幕

我越是关注这件事,我就在想,为什么不让一个活动来管理这两个片段呢?活动1启动片段1,单击项目,信息返回活动,FragmentManager用片段2替换片段1


我的问题是,这些方法中是否有一种更符合“最佳实践”,或者它们都很好,这是一个选择问题?

好的,您可以选择单个活动-多个片段。您也可以使用bundle在片段之间传递数据。选择的问题也取决于用例。但片段被用作轻量活动,比活动需要更少的资源。大多数事情都可以通过片段实现。因此,除非不需要使用“活动”,否则我的选择是使用单个活动-多个片段。

您没有足够清楚地描述您的问题,无法使用多个活动,除了与列表无关的数据以及单击此处时发生的情况

您描述的是一个,对于一个活动和两个(或更多)片段来说,这是一个很好的用例-一个列表+一些细节页面。如果可以的话,这在大屏幕上尤其有意义

例如,您可以有一个包含导航屏幕(无论是选项卡、抽屉还是底部视图)的活动,然后导航到其中的所有内容都是一个片段


否则,您将重定向到一些“设置”页面,例如,这是一个新的活动,它在您的UI中演示了“”

哦,孩子……你揭开了一个潘多拉魔盒。这里没有对错之分。两个都可以。我个人出于无数的原因试图避免碎片。但如果你有平板电脑布局,你会想使用它们。关于1幕2还是2幕2,在大多数情况下,这更多的是个人的选择。这两方面都没有“很多优点/缺点”,这取决于您的最小/最大API以及其他。如果你有两个活动已经开始工作了,那绝对没有问题。感谢你的反馈如果你使用“演示者”和/或依赖注入,那么你可以在活动/片段之外卸载很多“逻辑”,这意味着你拥有的东西更不重要,只要你的活动或片段只负责处理“视图”,每次发生任何事情时,你都会告诉你的“演示者”处理它(这会反馈给活动/片段)等等。>“比活动需要更少资源的轻量级活动”-这是什么原因?碎片在幕后也需要很多东西,我敢说如果碎片管理者这么想的话,它们会比活动寿命更长…