为什么要使用碎片?

ahm*_*_89 6 performance android android-layout android-fragments android-fragmentactivity

我已经阅读了关于这个主题的文档和一些其他问题的线索,我真的不相信; 我没有清楚地看到这种技术的使用限制.

片段现在被视为最佳实践 ; 每个Activity基本上应该支持一个或多个Fragments而不是直接调用布局.

创建片段是为了:

  1. 允许Activity使用许多片段,在它们之间进行更改,重用这些单元... ==> Fragment完全依赖于Context一个活动,所以如果我需要一些通用的东西,我可以在许多活动中重复使用和处理,我可以创建我自己的自定义布局或视图...我不会关心片段会添加的额外复杂性开发层.

  2. 更好地处理不同的分辨率==>对于平板电脑/手机,如果是长时间的过程,我们可以在平板电脑的同一个活动中显示两个(或更多)片段,并在手机中逐个显示.但我为什么要使用片段始终

  3. 处理回调以在Fragments之间导航(即:如果用户登录,我会显示一个片段,否则我会显示另一个片段).===>试着看看facebook SDK登录有多少bug因为这个,要明白它真的是(?)......

  4. 考虑到Android应用程序基于活动......在Activity中添加另一个生命周期会更好地设计一个应用程序......我的意思是模块,场景,数据管理和连接将更好地设计,办法.===>这是一个过去常常看到带有Fragments愿景的Android SDK和Android Framework的人的答案.我不认为这是错的,但我不确定它会给出好的结果......它真的很抽象......

====>为什么我会一直使用它们使我的生活复杂化,编码更多?否则,如果它只是某些案例的工具,为什么它是最佳实践呢?这些案件是什么?

如果我写得太多,我很抱歉,谢谢你的时间.我希望我会引起你的注意,因为我真的需要关于这个主题的想法和经验.

最好的问候,艾哈迈德

Epi*_*rce 1

如果除了通过不同布局更简单地重用逻辑之外还有某个积极方面的话,那就是系统在方向改变时保持片段存活的能力,也就是当 Activity 从零开始重建时,片段可以保留其实例,并且因此使用它们比 Activity 更稳定。此外,Fragment 之间的切换也更快。

就我个人而言,如果我不需要搞乱不同的方向和布局大小,我仍然更喜欢使用 Fragment 和围绕它的单一容器 Activity,以实现不同屏幕之间的稳定性和无缝切换。