我知道它Activities
的目的是代表我的应用程序的单个屏幕,同时Fragments
设计为可重用的UI布局,其中嵌入了逻辑.
直到不久前,我开发了一个应用程序,因为它说应该开发它们.我创建了一个Activity
代表我的应用程序的屏幕并使用Fragments for ViewPager
或Google Maps
.我很少创建ListFragment
可以多次重用的UI或其他UI.
最近我偶然发现一个项目只包含2 Activities
个是一个SettingsActivity
而另一个是MainActivity
.它的布局中MainActivity
填充了许多隐藏的全屏UI片段,只显示了一个.在Activity
逻辑FragmentTransitions
中,应用程序的不同屏幕之间存在许多.
我喜欢这种方法的原因是因为应用程序使用了一个ActionBar
,它保持原样并且不会随着屏幕切换动画一起移动,这就是Activity
切换时发生的情况.这为这些屏幕转换提供了更流畅的感觉.
所以我想我要问的是分享你关于这个主题的当前开发方式,我知道它看起来可能看起来像一个基于意见的问题,但我把它视为一个Android设计和架构问题...不是真的基于意见的一个.
更新(01.05.2014):继来自Square的Eric Burke的演示之后(我不得不说这是一个很棒的演示文稿,为Android开发人员提供了许多有用的工具.而且我与Square没有任何关系)
http://www.infoq.com/presentations/Android-Design/
根据我过去几个月的个人经验,我发现构建应用程序的最佳方法是创建一组片段,这些片段代表应用程序中的流并将所有这些片段集中在一个片段中Activity
.所以基本上你Activities
的应用程序的数量与流量的数量相同.这样,操作栏在所有流程的屏幕上保持完整,但正在重新创建流程,这很有意义.正如埃里克伯克所说,并且我也已经意识到,尽可能少Activities
地使用的哲学并不适用于所有情况,因为它在他所谓的"上帝"活动中造成混乱.
在Android API 11+中,Google发布了一个名为的新类Fragment
.
在视频中,谷歌建议尽可能(link1,link2),我们应该使用片段而不是活动,但他们没有解释确切原因.
片段的目的是什么?它们的一些可能的用途(除了一些可以通过简单的视图/布局轻松实现的UI示例)?
我的问题是片段:
奖金问题:
android android-layout android-fragments android-3.0-honeycomb android-activity