【问题标题】:How to use ListView without Adapter如何在没有适配器的情况下使用 ListView
【发布时间】:2015-03-27 13:03:24
【问题描述】:

我们经常使用ListViewBaseAdapter。但是我这几天研究适配器模式。我想知道我们是否可以在没有适配器的情况下使用ListView?比如我们可以在ListView中写项目,就这样:

<ListView>
        <Item/>
        <Item/>
        <Item/>
</ListView>  

我试过很多次了,还是不行。我可以在没有任何Adapter 的情况下使用ListView 吗?

【问题讨论】:

  • 不,你必须使用适配器

标签: android android-listview


【解决方案1】:

试试这个..

在 string.xml 中首先执行此操作..

   <string-array name="Entries">
    <item>Item 1</item>
    <item>Item 2</item>
    <item>Item 3</item>
   </string-array>

然后在 xml 中的 ListView 中执行此操作。

    <ListView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:entries="@array/Entries"></ListView>

【讨论】:

  • 注意:这只是没有使用适配器的错觉。在内部使用条目用户适配器
【解决方案2】:

ListViews 必须使用Adapter。如果您没有设置 Adapter 并通过 XML 设置 android:entries,那么在内部它将使用适配器来扩展视图。

来自docs

ListView 是一个显示可滚动项目列表的视图组。列表项使用Adapter 自动插入到列表中,Adapter 从诸如数组或数据库查询之类的源中提取内容并将每个项结果转换为放入列表中的视图。

ListView 类是AdapterView 的子类,根据定义:

AdapterView 是一个视图,其子级由Adapter 确定。

因此,Listview 必须使用 Adapter 来扩充其子视图。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 2017-08-01
    相关资源
    最近更新 更多