我知道这个问题可能被问了很多次,但我想得到一个具体的答案,因为我正在开发的应用程序。我正在创建一个Android应用程序,它基本上是一个食谱搜索应用程序,允许用户选择配料、食品类别和准备时间,应用程序会找到适合用户搜索的菜谱。
有个人的“页面”的成分,类别和时间,我已经创建了每个活动。用户首先选择成分,然后单击Next,开始类别活动,然后再次单击Next,就会出现准备时间活动。然后,当他们单击Search时,我有另一个搜索结果的活动,当用户单击结果中的一个菜谱时,另一个显示菜谱的活动就开始了。
因此,我有以下活动,每个活动按以下顺序开始:
我做了一些阅读,发现我可能应该使用片段。我的计划是改变我的应用程序,让它有一个标签活动,三个标签的成分,类别和时间,并有一个搜索按钮在底部显示在所有三个片段,使用户可以轻松切换标签和搜索,从任何一个标签,他们目前正在查看。至于结果和展示食谱,我想离开各自的活动,因为他们是。搜索按钮启动ResultActivity,单击单个搜索结果启动RecipeActivity并显示用户单击的菜谱。
此外,我还计划添加一个“按菜谱标题搜索”功能。用户可以使用操作栏中的菜单按钮在这两种搜索模式之间切换。我假设每个搜索模式都必须有一个单独的活动,所以这就是我计划要做的。
我的想法是正确的吗?或者,我应该只为整个应用程序做一个活动,其余的都是用片段完成的吗?
发布于 2016-10-16 13:04:31
对我来说,关于活动或片段的所有决策都与(1) UX (2)可管理性(3)跨组件通信成本等相关。
让我举例介绍一些决定。
Activity更好,因为它可以直接从AndroidManifest提供的内容中打开。
Fragment更好,因为Fragment+ViewPager提供了灵活的分页功能。此外,一些Android设备或主题编辑器覆盖活动打开效果,因此,如果我们以活动逐活动的方式实现,页面翻转动画就不会按预期运行。
StartActivity?执行相机或照片意图?Activity更好,因为当应用程序从相机应用程序恢复回来时,OnActivityResult很难管理内部片段。因此,“写帖子”屏幕可能是一个很好的例子,可以作为一个单一的活动。
Activity更好,因为它可以在没有活动-片段舞的情况下更快、更轻地出现。
Fragment更好,因为我们可以准备平板布局。
Activity更好,因为我们可以只关注活动,而不是内部片段内存的使用。
专业的安卓开发人员推荐使用多个Fragment和单一Activity,但我们可以决定创建更多的活动,以便更容易地管理和更快地理解。
在您的例子中,我想实现如下组件。
https://stackoverflow.com/questions/40069503
复制相似问题