我应该如何构建我的应用程序?

时间:2013-09-25 00:32:12

标签: android android-fragments navigation tabactivity drawerlayout

enter image description here

我的Android应用程序目前使用具有四个选项卡的TabActivity。我还使用第三方导航抽屉,提供了一种更简单的方法来导航到这四个选项卡。我知道,当我们有标签时,为什么有导航抽屉?这是我的组织想要的。该应用程序目前也不支持平板电脑。

现在是时候从头开始重做我们的应用了。这次我们还需要添加对平板电脑的支持。我一直在看谷歌和片段提供的新导航抽屉。由于TabActivity已被弃用,我们不想再使用它了,谷歌建议我们使用片段代替。谷歌提供的工具,如导航抽屉和片段是非常强大的工具,但我很难构建我的应用程序。

该应用有四个主要标签,所有这些标签都需要一个导航抽屉。但是,这需要是一个常见的导航抽屉,此导航中显示的项目不仅包含导航到这四个显示的链接,而且还添加了其他功能。

从附图中可以看出,四个标签中有三个直接从ListActivity开始。它们需要是3种不同的活动,因为它们都具有不同的信息,用户必须能够从一个活动转到另一个活动。

当用户点击列表中的某个项目时,它会将它们带到详细视图(详细活动)。此详细活动还需要具有父活动(ListActivity)具有的相同导航抽屉。最重要的是,此视图将向导航抽屉添加另外4个操作新操作。此视图还需要一个从右到左打开的抽屉。

如果用户通过浏览所有四个标签位于详细视图(详细活动)中,则用户应该能够根据他们在listActivity上单击的项目查看不同的数据。

我想我会使用一个抽象的基本活动类来保存导航抽屉,所有活动都会使用它们。我还将使用主/细节流模式,以便它适用于手机和平板电脑。然而,在我发现我无法扩展基本活动以使用导航抽屉之后,这个计划被击落了。

此时,我迷失了该怎么做。任何建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

你以错误的方式思考。构建应用程序的方式是基于预碎片(每个屏幕的活动)。相反,如果有新的交互流程,您应该只创建一个新活动(我没有注意到您所描述的内容)。所以基本上我会为每个屏幕使用一个片段,并使它们尽可能抽象,以便您可以重复使用它们。在这种情况下,您只有一个活动,而您只是切换进出片段。这使得实现统一的导航抽屉变得更加容易(而且实际上是唯一的方法)。

希望有所帮助,乐意与您澄清任何事情。我记得当我第一次切换到片段时,它很混乱,但它更容易,特别是当你开始开发手机和平板电脑时。