커스텀 리스트뷰 예제

레이아웃의 이 루트는 일반적으로 ViewGroup(레이아웃 관리자)이며 ImageView 및 TextView와 같은 여러 다른 뷰를 포함합니다. 다음 그래픽은 홀수 및 짝수 행에 대해 서로 다른 레이아웃의 목록을 보여 주며 있습니다. 당신은 목록에서 더 많은 항목을로드에 대한 자습서를 만들 수 있습니다버튼 또는 아무것도를 클릭하여보기??? 사용자 지정 어댑터가 ListView로 설정된 MainActivity.java는 아래에 정의되어 있습니다. 이와 함께 임의의 데이터 모델 객체목록이 채워집니다. de.vogella.android.listactivity 프로젝트를 계속 사용하십시오. 다음 코드는 기존 뷰를 재사용하고 홀더 패턴을 구현하는 성능 최적화어댑터 구현을 보여 주며, 이 구현은 다음과 같은 것입니다. ListView의 선택된 항목을 얻으려면 단일 선택 방법에 대한 getCheckedItemPosition()를 사용하거나 여러 선택 항목에 대해 listView.getCheckedItemPositions()를 사용합니다. 안정적인 ID가 있는 경우 getCheckedItemIds() 메서드를 사용하여 선택한 ID를 얻을 수도 있습니다. 레이아웃에서 @android:id/empty ID가 있는 뷰를 사용할 수도 있습니다. 해당 활동 및 조각은 ListView가 비어 있고 그렇지 않으면 숨기면 이 보기를 자동으로 표시합니다. 예를 들어 이러한 보기에 오류 메시지를 표시할 수 있습니다. android.app.Activity 가져오기; android.content.Context 가져오기; 가져 오기 android.os.Bundle; 가져 오기 android.view.LayoutInflater; 가져오기 android.view.View; 가져오기 android.view.ViewGroup; 가져 오기 android.widget.Array어댑터; 가져 오기 안드로이드.widget.ListView; 가져 오기 안드로이드.widget.TextView; 물론 목록 보기 주위에 임의의 뷰 요소를 배치할 수 있습니다. 예를 들어 두 개의 텍스트 뷰와 둘 사이의 목록 보기가 있는 레이아웃을 정의할 수 있습니다.

이 경우 두 텍스트 보기는 항상 목록(헤더) 위에 표시되고 다른 보기는 목록 아래에 표시됩니다. 목록 헤더 또는 목록 바닥글을 목록의 시작 또는 끝에만 표시하려면 ListView 클래스에서 addHeaderView() 메서드 또는 addFooterView() 메서드를 사용할 수 있습니다. 이러한 요소에 레이아웃을 할당할 필요가 없습니다. 레이아웃을 정의하지 않으면 활동 또는 조각에 기본적으로 단일 ListView가 포함됩니다. ListActivity 및 ListFragment를 사용하면 목록 항목 선택을 처리하기 위한 onListItemClick() 메서드를 재정의할 수도 있습니다. 데이터 모델을 ListView에 채우는 사용자 지정 적응자는 다음과 같습니다. CustomAdapter.java 디렉토리에서 rowlayout.xml 레이아웃 파일을 만듭니다]]]res/layout 폴더 de.vogella.android.listactivity 프로젝트. 마지막으로 다음 목록에서 설명한 대로 어댑터를 만들고 아래 제공된 코드로 활동을 변경합니다. 안녕하세요,나는 괜찮은 listview 어댑터를 찾고 있었고, 이것은 내가 내 응용 프로그램에서 사용하는 경우 당신이 마음 것 같다?당신은 나에게 공유 환경 설정에 그것을 saverify하는 방법에 대한 힌트를 줄 수 있을까? Android에서 어댑터는 데이터 원본과 ListView, Gridview와 같은 어댑터 뷰 사이의 중간 역할을 하여 데이터를 어댑터 뷰로 채웁니다.