RuntimeException:你的内容必须有一个ListView,它的id属性是'android.R.id.list'

我得到一个运行时exception

java.lang.RuntimeException:你的内容必须有一个ListView的id属性是'android.R.id.list'

我不知道什么是错的。

@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.newslist); mDbHelper.open(); fillData(); } private void fillData() { Bundle extras = getIntent().getExtras(); long catID = extras.getLong("cat_id"); Cursor c = mDbHelper.fetchNews(catID); startManagingCursor(c); String[] from = new String[] { DBHelper.KEY_TITLE }; int[] to = new int[] { R.id.newslist_text }; SimpleCursorAdapter notes = new SimpleCursorAdapter(this, R.layout.text_newslist, c, from, to); setListAdapter(notes); } 

newslist.xml

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> <ListView android:id="@+id/catnewslist" android:layout_width="wrap_content" android:layout_height="wrap_content"> </ListView> </LinearLayout> 

text_newslist.xml

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:text="@+id/newslist_text" android:id="@+id/newslist_text" android:layout_width="wrap_content" android:layout_height="wrap_content"> </TextView> </LinearLayout> 
 <ListView android:id="@android:id/list" android:layout_width="fill_parent" android:layout_height="fill_parent"/> 

这将解决错误,如果你仍然想使用ListActivity。

删除对setContentView的调用 – 你不需要它在ListActivity中,除非你正在做一些激进的事情。 代码应该没有它的工作。

另一种方法是,不要扩展ListActivity 。 只要扩展Activity ,那么你可以通过setContentView()创build你的列表视图,并通过findViewById(R.id.yourlistview)获得列表视图。

如果从ListActivity扩展,则不要使用setContentView() 。 您需要通过getListView()获取列表活动中托pipe的默认列表视图。

我收到的错误消息有类似的问题,我发现这是因为我扩展ListActivity而不是只是活动(这是我从重新利用代码从不同的项目;))

 <ListView android:id="@id/android:list" android:layout_width="fill_parent" android:layout_height="wrap_content" android:drawSelectorOnTop="false" android:scrollbars="vertical"/> 

我也是这样的 在我的情况(也许与您的情况不相关,只是分享给他人)在类mainActivity.java yourClassName extends ListActivity(){...}改为yourClassName extends Activity(){...}

我也面临这个问题,我是从listactivity扩展我的活动类,但我的列表视图的id不defencet我改回列表,现在它的工作正常。 阿西姆soroya