런타임 예외가 발생합니다.
java.lang.RuntimeException : 콘텐츠에는 id 속성이 ‘android.R.id.list’인 ListView가 있어야합니다.
나는 무엇이 잘못되었는지 모른다.
@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()
가져올 수 있습니다 findViewById(R.id.yourlistview)
.
에서 확장하는 ListActivity
경우 setContentView()
. 에 의해 목록 활동에서 호스팅되는 기본 목록보기를 가져와야합니다 getListView()
.
답변
받은 오류 메시지와 비슷한 문제가 있었고 Activity 대신 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가 기본이 아니었고 목록으로 다시 변경했으며 이제 정상적으로 작동합니다. 아심 소로 야