菜单作为android listview的数据源?

时间:2013-04-12 19:38:19

标签: android design-patterns android-listview

我对常见的listview模式的工作原理感到困惑。

在我发现的所有指南中,我都看到了类似的内容:

  1. 将您的菜单项写入字符串数组(XML或代码中)。
  2. 将该数组设置为列表视图的数据源。
  3. 如果用户点击(选择)任何项目,获取该项目的索引,并以某种方式弄清楚你应该做什么(用案例结构或其他方法检查)
  4. 即使这不是全部。

    外观。如果我想为每个列表项设置不同的图标怎么办?再次循环遍历该列表并设置相应的图标看起来很愚蠢。

    但是。也许我错过了什么?

    是否可以使用类似的东西:

    (伪代码)

    <menu id="list">
        <item name="first" icon="icon1.png">First</item>
        <item name="second" icon="icon2.png">Second</item>
        <item name="third" icon="icon3.png">Third</item>
    </menu>
    ...
    <listview  entries="@list"></listview>
    

1 个答案:

答案 0 :(得分:1)

你几乎完全糊涂了。

ListView与菜单无关。 ListView是一个小部件,它允许无限数量的行,在屏幕上显示这些行的子集,并提供有效的滚动。这就是全部。

ListViews有适配器。适配器允许您获取数据结构并将它们映射到列表视图中的行位置。还通过提供ListVIew用作行视图的getView函数来定义行在屏幕上的显示方式。有内置的适配器来做非常简单的事情,如果你想做一些更复杂的事情,那就自己写一些简单的东西了。

这就是列表视图的基础。