澄清我的应用程序的结构

时间:2015-08-09 22:24:21

标签: android android-layout android-fragments android-activity android-xml

首先是一些背景信息。我要求我的应用程序显示帖子的摘要,以卡片形式实现。帖子/卡片中的数据是从我网站的REST API中检索的。我的应用程序有3个不同的选项卡,每个选项卡包含不同的帖子/卡片供稿(但仍然是相同的布局)。

目前,我有一个activity_main,每个标签都有3个片段(fragment_1fragment_2fragment_3)。据我了解,Fragment是一种可以在不同Activities上重复使用的布局。这是对的吗?

此外,我应该在哪里实施卡的布局/设计?它应该直接位于单独的Fragments内(即使所有3个标签中的卡片布局相同)?

在实现卡片布局后,如何根据请求的REST API json数据填充卡片?换句话说,我如何遍历每个结果并将数据插入卡中并将其显示在屏幕上?

对于noob问题抱歉。

2 个答案:

答案 0 :(得分:0)

  

目前,我有一个activity_main,每个都有3个片段   tab(fragment_1,fragment_2,fragment_3)。据我所知,一个   片段是可以在不同活动上重复使用的布局。是   这是正确的吗?

  

此外,我应该在哪里实现布局/设计   牌?它应该直接在单独的碎片中(甚至是   虽然卡片的布局在所有3个标签中都是相同的)?

有一个片段。如果所有3个选项卡中的卡片布局相同,则创建此片段的3个实例并为相同的布局/设计充气。

  

在实施卡片布局后,我将如何填充卡片   给定请求的REST API json数据?换句话说,我怎么样   循环遍历每个结果并将数据插入卡中并显示   它在屏幕上?

在创建新实例并将其设置为fragment参数时,将标识Feed(对于此片段)的唯一标识符作为包传递给该片段。然后,您可以检索此信息以检索与此片段相关的数据。

要显示数据,请使用ListView / RecyclerView以及合适的适配器将数据连接到视图。

我希望这能回答你的问题。

答案 1 :(得分:0)

行。让我们试一试。是的,你是对的,碎片基本上是可以在不同活动中使用的布局。正如它在Android Developers网站上所说的那样:

  

Fragment表示一个行为或用户界面的一部分   活动。您可以将单个活动中的多个片段组合到一起   构建多窗格UI并在多个活动中重用片段。

话虽如此,由于所有三个选项卡的布局相同,因此您只能使用一个片段并使用不同的数据填充它。因此,如果您想要更改任何内容,则只能在该片段中进行更改。

对于卡片,我猜你将使用自定义ListView适配器。你应该(必须)在Fragments之外实现。

关于最后一个问题,有许多库使消费ReST Web服务变得更加容易。例如Retrofit