2011-04-07 2 views
0

MergedAdapter 두 개의 사용자 지정 어댑터 (ArrayAdapter 파생 됨)를 각각 하나의 ListView에 대한 섹션 헤더와 함께 그룹화하려면 MergedAdapter을 사용하고 있습니다. 괜찮 았어,하지만 지금은 항목이없는 섹션에 대해 "데이터 없음"이라고 말하는 TextView를 표시해야합니다. ArrayAdapter가 비어 있습니다.MergedAdapter에서 섹션에 대한 빈 메시지 표시

이 용도로 가장 적합한 방법은 무엇입니까?

 
ArrayList<ItemOne> firstItems = getFirstGroupItems(); 
ArrayList<ItemTwo> secondItems = getSecondGroupItems();
ItemOneAdapter firstAdapter = new ItemOneAdapter(this, this.firstItems); ItemTwoAdapter secondAdapter = new ItemTwoAdapter(this, this.secondItems);
MergeAdapter adapter = new MergeAdapter(); adapter.addView(createGroupSeparator(R.string.first_section_header)); //Just creates a TextView adapter.addAdapter(firstAdapter); adapter.addView(createGroupSeparator(R.string.second_section_header)); //Just creates a TextView adapter.addAdapter(secondAdapter);
listView.setAdapter(adapter);

답변

0

빈리스트의 경우, 당신은 첫 번째 항목은 "데이터 없음"을 읽어 만들 수 있지만, 일반적으로 코드가 관리하기 어려운합니다 : 바인딩의 ListView를 설정하는 코드는 다음과 같다. 메시지가있는 보이지 않는 TextView를 화면에 추가하는 것이 좋습니다. 이것은 목록이 비어있을 때만 표시됩니다.

+0

전체 목록보기가 비어있는 경우이를 수행 할 수 있지만 MergeAdapter에 추가하는 각 어댑터마다 수행하려고합니다. –