我知道这Activities
是为了代表我的应用程序的一个屏幕,而Fragments
设计的它们是设计为可重用的UI布局,其中嵌入了逻辑。
直到不久前,我还开发了一个应用程序,因为它说应该进行开发。我创建了一个Activity
来代表我的应用程序的屏幕,并将Fragments用于ViewPager
或Google Maps
。我很少创建ListFragment
可以重复使用多次的UI或其他UI。
最近,我偶然发现了一个仅包含2 Activities
个的项目,一个是SettingsActivity
,另一个是MainActivity
。的布局中MainActivity
填充了许多隐藏的全屏UI片段,仅显示了一个。在Activity
逻辑上有很多FragmentTransitions
上,应用程序的不同屏幕之间。
我喜欢这种方法的原因在于,因为应用程序使用ActionBar
,所以它保持不变并且不会随着屏幕切换动画而移动,Activity
切换一样。这使这些屏幕过渡更加流畅。
因此,我想我想问的是与您分享有关此主题的当前开发方式,我知道乍一看它看起来像是一个基于意见的问题,但我将其视为一个Android设计和体系结构问题。基于意见的。
UPDATE(2014年5月1日):在此之后呈现由埃里克·伯克从广场,(这是我不得不说是一个有很多的Android开发人员有用的工具,一个伟大的演示和我没有以任何方式广场相关)
http://www.infoq.com/presentations/Android-Design/
根据过去几个月的经验,我发现构建应用程序的最佳方法是创建片段组,以代表应用程序中的流程并将所有这些片段组合在一起Activity
。因此,基本上Activities
,您的应用程序中的流数将与流数相同。这样,动作栏在所有流程的屏幕上都保持不变,但是在更改流程时会重新创建,这很有意义。正如埃里克·伯克(Eric Burke)所言,以及我已经逐渐意识到的那样,尽可能少使用哲学Activities
并不适用于所有情况,因为这在他所谓的“上帝”活动中造成了混乱。