1

在此处输入图像描述

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

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

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

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

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

如果用户通过浏览所有四个选项卡处于详细视图 (Detail Activity) 中,则用户应该能够看到不同的数据,具体取决于他们在 listActivity 上单击的项目。

我在想我会使用一个包含导航抽屉的抽象基活动类来做到这一点,所有活动都将使用它们。我还打算使用主/详细流模式,以便它适用于手机和平板电脑。然而,在我发现我无法扩展基本活动以使用导航抽屉后,这个计划被否决了。

在这一点上,我不知道该怎么做。任何建议将不胜感激。

4

1 回答 1

0

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

希望对您有所帮助,很高兴与您澄清任何事情。我记得当我第一次切换到 Fragment 时,很困惑,但它要容易得多,尤其是当你开始为手机和平板电脑开发时。

于 2013-09-25T01:57:34.807 回答