【问题标题】:easier way to make listview in android?在android中制作listview的更简单方法?
【发布时间】:2011-05-04 13:20:05
【问题描述】:

我必须制作一个列表视图,其中有两个元素要垂直显示。 我知道要使用 android 提供的默认适配器,只能有一个数组和一个文本资源......即如果我使用的是 android.R.layout.simple_list_view 那么只有一个文本资源。 要制作自定义列表视图,我正在执行以下操作:

  1. 为列表视图的每个元素制作一个 xml 布局文件
  2. 扩展扩展 baseadapter 的自定义适配器类
  3. 在自定义适配器类的 getview 方法中,我为每个元素膨胀视图,然后返回我希望 listview 元素从数组中获得的信息,该数组作为构造函数传递给自定义适配器类。

这似乎很乏味,因为在某些情况下我必须制作列表视图,有时每个列表视图元素中有三个文本元素,有时每个列表视图元素中有 2 个文本元素。

有没有更简单的方法来完成上述操作。

提前谢谢你。

【问题讨论】:

    标签: android listview


    【解决方案1】:

    对于如此简单的布局,我建议您只使用 LinearLayout 和 2-3 个 TextViews(或您需要的任何视图,甚至是水平的 LinearLayout)。没有什么能比得上这种简单。在这种情况下,不需要ListView

    【讨论】:

    • 我想我没有在问题中说清楚。我必须显示一个完整的列表,每个(ListView)元素可能有 2 /3 个文本视图。
    • 好的。很抱歉造成误解:) 那么看来你正在做几乎标准的程序。如果您在不同的列表中反复使用类似的适配器,那么我建议您制作自己的私有库并在每次需要时导入它。不幸的是,没什么好说的了。
    【解决方案2】:

    您可以考虑创建一个通用的、可重用的 ListView 布局文件,该文件加载了您需要的所有各种元素(希望是几个简洁的元素)。您可以使用 android:visible="false" 在布局 XML 文件中默认尽可能多的这些元素,然后以编程方式切换可见性。

    为什么不能重复使用适配器?它有很多与之相关的加载/卸载方法。

    是的,Aleadam 在说什么;如果您只有几件事,为什么要使用 ListView? TextView 似乎是一种更快的原型数据显示方式!

    【讨论】:

      猜你喜欢
      • 2012-08-15
      • 1970-01-01
      • 2013-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多