기본 데이터 구조를 직접 수정하고 어댑터에서 notifyDataSet() 메서드를 호출하여 데이터 변경 사항에 대해 알릴 수도 있습니다. 나는 lthe istvew의 각 행에 스피너를 만들 수있는 방법에 갇혀있어 도움이 필요합니다. 이미 사용자 지정 arrayadapter 클래스 및 사용자 지정 데이터 형식 클래스를 만들지만 각 행에 스피너를 추가하는 방법을 모르겠습니다. 선택 추적기를 등록합니다.선택관찰자는 선택이 변경될 때 알림을 받을 수 있습니다. 선택 영역이 처음 만들어지면 ActionMode를 시작하여 사용자에게 이를 나타내고 선택 관련 작업을 제공합니다. 예를 들어 ActionMode 막대에 삭제 단추를 추가하고 막대의 뒤로 화살표를 연결하여 선택 영역을 지울 수 있습니다. 선택 영역이 비어 있으면(사용자가 마지막으로 선택을 지운 경우) 작업 모드를 종료하는 것을 잊지 마십시오. 이제 어댑터가 데이터 원본에서 listview에 데이터를 제공하는 방법을 실제로 볼 수 있는 listview 예제를 만들어 보겠습니다. 간단한 어댑터를 구현하는 예는 아래ArrayAdapter가 행 레이아웃의 하나의 뷰에 toString()의 매핑만 지원하므로 제한됩니다. 데이터 할당을 제어하고 여러 뷰를 지원하려면 사용자 지정 어댑터 구현을 만들어야 합니다. 어댑터와 ListView를 사용할 때는 뷰 재활용의 작동 방식을 이해해야 합니다.
MyListActivity라는 활동으로 de.vogella.android.listactivity라는 새로운 안드로이드 프로젝트를 만듭니다. 사용자가 중요한 작업을 실행 취소할 수 있도록 하는 것이 좋습니다. 이러한 중요한 작업은 예를 들어 목록 항목의 삭제입니다. 매우 유용한 예, 공유 주셔서 감사합니다. 안부, 다음 코드는 기존 뷰를 재사용하고 홀더 패턴을 구현하는 성능 최적화 어댑터 구현을 보여줍니다. 데이터 원본이 ArrayList 의 형태일 때마다 이 유형의 어댑터는 ListView, GridView 또는 스피너에 사용하기에 가장 적합한 옵션입니다. 등록을 통해 이전에 이 어댑터에 등록된 관찰자등록을 취소합니다. 확장 가능한 ListViewListView 리스트 뷰와 비슷하지만 이 그룹에 대한 그룹 및 세부 정보를 정의할 수 있습니다. 확장 가능ListView 형식의 어댑터를 기대 합니다확장 가능 목록 적응기. 일반적으로 사용자는 예를 들어 목록을 새로 고치는 단추를 통해 도구 모음을 통해 목록과 상호 작용합니다. 개별 목록 항목을 선택할 수 있습니다.
이 선택 영역은 도구 모음을 업데이트하거나 선택 영역에 대한 자세한 화면을 트리거할 수 있습니다. 다음 그래픽 스케치. 목록 항목을 선택할 때 다른 활동이 시작됩니다. 친구, 메신저 는 2 단계에 붙어. IDE로 안드로이드 스튜디오 0.8.0을 사용하면 기호 `ObjectItem`, `ArrayAdapterItem`, `list_view_row_item`및 `OnItemClickListenerListView항목`을 확인할 수 없습니다. 사용자 정의 배열 적응자의 코드 예는 아래와 같이 de.vogella.android.listactivity 프로젝트를 계속 사용합니다. 배열적응자항목 어댑터 = 새 어레이어어아이템(이, R.layout.list_view_row_item, ObjectItemData); 다음 목록은 listView를 포함하는 activity_listviewexampleactivity.xml이라는 레이아웃 파일을 보여 주며, 여기에는 신속하게 안드로이드 어댑터의 기본 기능을 이해하려면, 우리가 시간으로 업데이트되지 않는 정적 데이터가있을 때마다 아래 이미지를 참조하십시오, 우리는 listview 또는 다른 사람에 그들을 채우기 위해 간단한 어댑터를 사용할 수 있습니다. 다음은 행에 대해 Android에서 미리 정의된 레이아웃을 재사용하는 예제를 보여 주며, 이 예제를 보여 주며, 이 예제는 행에 대해 미리 정의된 레이아웃을 재사용하는 예제입니다.
그런 다음 레이아웃 관리자는 뷰 홀더를 해당 데이터에 바인딩합니다. 어댑터의 onBindViewHolder() 메서드를 호출 하 고 RecyclerView에서 뷰 홀더의 위치를 전달 하 여이 작업을 수행 합니다.