Android Studio 0.8.10
我开发了一个包含3个片段的App。我刚刚使用了1个Activity,当我想显示一个不同的片段时,我只是将现有片段替换为我想要显示的片段。但是,由于我现在有3个片段,未来可能会有更多片段,我认为这将更难管理。
我只是想知道使用多个片段编程时的设计模式是什么,每个片段是否都有自己的活动?
我将来会将这个扩展到平板电脑,所以如果我坚持使用多个片段和单个活动,我不确定这将产生什么影响。
非常感谢任何建议,
答案 0 :(得分:1)
每个片段都有自己的活动吗?
是的,但您也可以使用嵌套片段。
我认为这将更难管理。
你说得对,但是
我认为您必须将您的应用与其他小部件匹配,例如,如果您有多个fragments
希望在另一个使用viewpager
之后显示一个,或者您可以使用horizontalscrollview
。您可以创建tabs
并按viewpager
等同步它们。
答案 1 :(得分:1)
是的,这真的很难弄明白。我认为,从Web应用程序世界来看,一个非常好的类比可能是servlet和框架。
活动就像一个servlet。这是您应用的工作流程中的一个页面。
另一方面,片段就像一块内容。它可能出现在几个不同的上下文中,它可能由几个不同的servlet提供服务。在MVC术语中,活动主要是控制器的一部分。另一方面,片段更像是视图包含。
很多时候,这两个概念是一致的。工作流中的页面通常只包含一个内容块。明智地,正如您所知,当您获得更多屏幕空间(在平板电脑上)时,单个活动完全有可能显示多个片段。
平板电脑上的单个活动可能会显示可选项目列表,和该列表中当前所选项目的详细信息。但是,当屏幕上的空间较小时,这两项内容将显示为单独的工作流程项。单击列表中的项目将调用一个全新的活动。
内容是不变的。工作流程发生了变化。
大多数现代应用程序将使用片段来显示活动内容。它使应用程序更灵活,更容易适应各种不同的屏幕。