在Android中为Feed /列表项创建xml模板?

时间:2011-09-13 19:20:31

标签: java android xml layout

我正在帮朋友创建一个Android应用程序,该应用程序的屏幕上会显示类似于Feed的信息列表。我一直在学习Android中的xml布局并且有一些基础知识,但是对于java的东西并不是很熟悉。我已经成功创建了包含在屏幕中为组件分隔布局文件,但我想知道的是,这样的组件是否可以用作在后端以编程方式插入的订阅源/列表项的一种模板。 IE,有没有办法让Android创建一个列表,对于每个列表项,它使用外部xml作为模板?对不起,如果这有些模糊,我是新手,并试图了解我们的选择。 TIA!

1 个答案:

答案 0 :(得分:0)

是的,每个列表项都可以是自定义布局。实际上,您总是来定义列表条目的布局。您可以从android.R.layout中选择预建的,也可以从R.layout使用自己的。您可以在代码中创建列表适配器时指定它。

例如,请查看one of the ArrayAdapter constructors

  

public ArrayAdapter(Context context,int resource,int   textViewResourceId)

     

从:API Level 1构造函数参数

     

上下文 - 当前背景。
   resource - 包含a的布局文件的资源ID   实例化视图时使用的布局。
  textViewResourceId - 要填充的布局资源中TextView的ID

构造函数采用将用于ListView子项的布局。与其他适配器类似。

你通常做的是膨胀适配器的getView()内的布局。执行此操作时,将所需的所有数据填充到布局视图中,然后返回视图。 请注意,您得到一个名为convertView的参数。这是您之前已经充气的旧版面之一。在大多数情况下,用户只是向下滚动,该条目不再可见。如果此convertView不为null,则可以在其中填充数据,而不是再次膨胀整个布局(这很昂贵)。

你可以在中找到一个有用的例子 ANDROID_SDK\samples\android-10\ApiDemos\src\com\example\android\apis\view\List5.java个文件。另请查看该文件夹中的其他列表示例。