首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是碎片还是不碎片?

是碎片还是不碎片?
EN

Stack Overflow用户
提问于 2012-12-13 17:33:06
回答 3查看 477关注 0票数 10

随着我开始越来越好地采用片段,但随着碎片功能的增加(片段中的片段,MapFragments),我开始到需要定义什么时候应该将新的视图/操作作为片段或活动的时候了?

一项活动的定义是:

一个活动是一个单一的,集中的事情,用户可以做。

但是一些片段却采用了这种定义,就像在文档中描述的那样:

例如,新闻应用程序可以使用一个片段显示左侧的文章列表,另一个片段显示右侧的文章--这两个片段都出现在一个活动中。

这是用户可以用两个片段在一个活动中做的两件事。

因此,我想要一些输入/帮助,以确定什么是最好的方法来决定我是应该将一个新的操作/视图作为一个片段还是作为一个活动?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-12-13 18:20:50

答案取决于您和您的开发实践(或公司的开发实践)。然而,我的观点是:至少,如果您认为正在开发的功能可以在多个活动中使用,或者如果它可以与另一个视图一起使用(比如在平板上),那么您应该将它变成一个片段。

我们最近采用了在所有情况下创建片段的哲学。我们的活动现在只是最高级别的协调员,基本上是把事情联系在一起的粘合剂。这就形成了一个一致和灵活的体系结构。这对我们来说很重要,因为我们有很多工程师在几个地方工作代码。

票数 14
EN

Stack Overflow用户

发布于 2012-12-19 14:16:20

活动的定义是:“活动是用户可以做的单一的、有重点的事情”。

这更多地是一个过时的文件问题,而不是任何其他问题。Activity有同样的定义..。当我们在一个较小的屏幕上时(例如,手机)。当你移动到更大的屏幕上时,一项活动比“单一的、专注的事情”更复杂的几率增加了。

因此,我想要一些输入/帮助,以确定什么是最好的方法来决定我是应该将一个新的操作/视图作为一个片段还是作为一个活动?

以下是我的一般启发:

  • 如果您预期这样或那样的用户界面可能在手机大小的屏幕上独立存在,但与平板大小的屏幕上的其他东西一起使用,则将其作为一个片段。
  • 如果您预期这样或那样的UI将始终独立存在,只需创建一个简单的活动即可。
  • 如果你预期你的预测能力不是那么好,那就做更多的片段吧。例如,你可能会说,“好吧,帮助永远不需要和其他任何事情在一起”,并使之成为一种活动。然后,如果你意识到其他的用户界面可能受益于帮助与他们并肩作战,而不是独自离开--这样用户就可以阅读文档并同时执行操作--你会后悔没有把帮助变成一个片段,因为你将不得不做一些重新工作。
  • 如果这样或那样的UI片段永远不会独立存在--换句话说,如果它更像一个小部件而不是一个完整的活动--并且您期望在多个项目中使用它,那么将它变成一个小部件,以自定义的ViewViewGroup的形式出现。

但是,正如jsmith所指出的,没有普遍的正确或错误的答案。顺便说一句,AFAIAC,jsmith的答案是正确的,但是我要说的太长了,不能对他的回答发表评论.:-)

票数 6
EN

Stack Overflow用户

发布于 2012-12-19 13:32:32

我从1.5开始就开始用Android开发,所以我已经开发了相当长一段时间的活动和最近的片段。

很多时候碎片让我嘴里带着酸味.例如,我需要一种带有按钮的分页仪表板。为此,我每个按钮使用一个ViewPager +1片段。我遇到了各种各样的问题,因为在Android4.2之前,碎片不能嵌套。

另一个问题是片段的异步功能模式,当需要快速地从一个地方移到另一个地方时,就会出现各种错误行为。

别以为一切都很糟..。在更简单的情况下,碎片的使用效果很好。

所以,在我看来,每当你有一个自我包含的区域,在视图上不频繁移动,可以在几个屏幕上重用,你也支持平板电脑(或我的未来),使用它。

如果您需要嵌套的片段、经常被重新排列的视图,或者不会被重用的代码,则不要。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13865300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档