0

我正在尝试填充列表视图,并尝试在我的主视图中选择我的列表视图:

lv = (ListView) findViewById(R.layout.activity_main.xml.id);

我的 XML 文件夹结构是:

资源>布局>activity_main.xml

我的main_activity.xml文件如下所示:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <ListView
        android:id="@android:id/list"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true" >
    </ListView>

</RelativeLayout>

我认为这是我没有完全理解 xml id 值如何在 android 中工作的一个简单错误。

4

4 回答 4

5

更改以下

在 OnCreate

setContentView(R.layout.activity_main);  
lv = (ListView) findViewById(R.id.list);

更改 xml 中的列表视图

<ListView
    android:id="@+id/list"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true" >
</ListView>  
于 2013-06-18T06:46:39.760 回答
1

尝试如下:

setContentView(R.layout.activity_main);

lv = (ListView) findViewById(R.id.ist);

并在 xml 中更改 listview 的 id,如下所示:

android:id="@+id/list"
于 2013-06-18T06:45:15.817 回答
1

在活动代码文件(java)中试试这个

ListView lv = (ListView) findViewById(android.R.id.list);
于 2013-06-18T06:48:17.580 回答
0

在 onCreate() 你会发现setContenctView(R.layout.activity_main);如果没有那么你必须添加它。确保将其设置为您要在代码 java 文件中使用的 xml 活动。然后您可以使用以下方法轻松引用 listView

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

控件的 xml 中的 id 也以以下形式定义

 <ListView
    android:id="@+id/list"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true" >
</ListView>
于 2013-06-18T06:50:56.000 回答