XML文件中的ListView未被拾取

时间:2014-06-17 08:58:00

标签: android xml listview

尝试使用自定义游标适配器将数据从DB显示到列表视图时出现问题。我想我已经追查到这个问题,因为我无法找到'我的xml文件中的listview元素。

在我的XML文件中,我有这个:

<LinearLayout
    android:layout_width="fill_parent" 
    android:layout_height="0dp" 
    android:orientation="horizontal"
    android:layout_weight="7" >

    <ListView
        android:id="@+id/android:list"
        android:background="?android:attr/activatedBackgroundIndicator"
        android:choiceMode="singleChoice"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

</LinearLayout>

我的主要onCreate中有我的活动:

setContentView(R.layout.activity_trip_display);
.... // other code
tripList = (ListView) findViewById(R.id.list);

但最后一行产生的 &#39;列表无法解析,或者不是Eclipse中的字段&#39; 错误。

如果我添加&#39; android&#39;在那里:

tripList = (ListView) findViewById(android.R.id.list);

它编译好了然后我得到了变量&#39; tripList&#39;的空条目。这导致其他NPE错误。

有什么想法吗?

编辑:好吧,我认为我的问题是我的光标适配器 - 会发布一个新问题。谢谢大家的期待...

4 个答案:

答案 0 :(得分:1)

如果您的ListView ID为android:id=@android:id/list",则无需定义

tripList = (ListView) findViewById(android.R.id.list);

并且您的Activity必须延长ListActivity,也无需将setContentView()添加为 @ AndroidWarrior的评论

如果您的ListView ID为android:id="@+id/list",则使用

初始化您的ListView
tripList = (ListView) findViewById(R.id.list);

转到此处了解更多演示http://www.vogella.com/tutorials/AndroidListView/article.html

答案 1 :(得分:0)

而不是android:id="@+id/android:list"使用android:id="@+id/list"

答案 2 :(得分:0)

如果您想在编码中使用它

tripList = (ListView) findViewById(android.R.id.list);

然后你的班级必须延伸ListActivity

并更改ListView ID的xml,如

 android:id="@+id/android:list"

 android:id ="@android:id/list"

答案 3 :(得分:0)

我认为 android:id =“@ + id / android:list”的问题替换为此

android:id =“@ + id / list”并将您的应用程序扩展到Activity就足够了。

ListView list =(ListView)findViewById(R.id.list);

如果问题解决了,请接受ans。