2011-09-09 1 views
0

@android 가지고 listactivity를가 있어야합니다 확장 : ID/목록을은 여전히 ​​@android 얻을 didnt가 : ID/목록 @ + ID를 대/listView1

질문 1> 내가 식별자 다음 2 개의 ListView를 구현하려는 경우 어떻게 @android : id/list와 같을 것입니다.

질문 2> 어떤 시나리오에서 @ + id/listView1을 사용해야합니다.

미리 감사드립니다.

+0

당신이 표시하려는 2 개의 ListView의 데이터 사이의 관계는 무엇입니까? – yjw

답변

1

ID는 독자적으로 지정하지 않는 한 독립적입니다. 따라서 "@ + id/listView1"솔루션을 매번 내가 아는 한 사용할 것입니다. 나는 내 자신의 안드로이드 애플 리케이션에서 이것을했고 그것은 잘 작동했습니다.

+0

http://developer.android.com/reference/android/app/ListActivity.html ListActivity에는 화면 중앙에 전체 화면으로 구성된 단일 목록으로 구성된 기본 레이아웃이 있습니다. 그러나 원하는 경우 onCreate()에서 setContentView()를 사용하여 자체 레이아웃을 설정하여 화면 레이아웃을 사용자 정의 할 수 있습니다. 이렇게하려면 자신의보기에는 ID가 "@android : id/list"인 목록 뷰 객체 (또는 코드에있는 경우 목록)가 포함되어야합니다. – supera

+0

ListActivity를 사용하는 경우 Android 프레임 워크가 'list'의 ID를 가진 목록을 찾고 있어야합니다. 하지만 ListActivity에 대해 하나 이상의 목록을 가질 수는 없다는 것을 알고 있습니다. Activity에서 여러 ListView를 관리하려면 자체 ListAdapter를 작성해야합니다. 그런 다음 레이아웃 등을위한 별도의 XML 파일을 정의 할 수 있습니다. –

1

ListActivity은 기본적으로 Activity을 확장하고 하나의 ListView 플러스를 처리하는 편리함이있는 '편의'클래스입니다. 특별히 특별한 것은 없습니다.

둘 이상의 ListView이있는 Activity을 원한다면 처음부터 자신 만의 것을 간단히 만드는 것이 좋습니다.

0

Xml을 만들려면 상단에 이미지 뷰, 가운데에 목록 뷰, 하단에 버튼이있는 relativelayout을 사용한다고 가정 해 보겠습니다. 그런 다음 액세스 권한을 얻으려면 목록보기에 대한 고유 ID를 설정해야합니다. 예 :

<ListView 
    android:"@+id/unique_listview" 
    android:layout_width="fill_parent" 
    android:layout_height="400px" 
/> 

그런 다음 사용자 지정이와 목록보기 채울 수 있습니다 :

ListView myList = (ListView) findViewById(R.id.unique_listview); 
myList.setAdapter(new myListAdapter(this)); 


private class myListAdapter extends BaseAdapter { 
.... 
} 
관련 문제