2011-09-19 4 views
17

어떻게 특정 목록보기 구분 기호를 숨기거나 삭제할 수 있습니까? 물론 모든 칸막이를 숨길 수 있습니다.Android. 특정 목록보기 구분 기호를 숨기기

getListView().setDivider(null); 
getListView().setDividerHeight(0); 

그러나 내 목록보기에는 하나 또는 두 개의 구분선이 숨겨져 있어야합니다. 예를 들면 위치에 따라. 목록 데이터에 대해 사용자 지정 어댑터를 사용하고 있습니다. 감사합니다. .

답변

7

구분 기호를 켜거나 끌 수있는 각 ListItem에 대한 사용자 지정보기를 만들거나 적절한 위치에서 목록보기에 추가 할 구분보기를 만들 수 있습니다.

+0

목록 항목에 대한 맞춤 레이아웃이 있습니다. 하지만 각 항목에 구분선을 추가하거나 제거하는 방법을 모릅니다. 나는 분배기가 모든 listview에 대한 공통점이라고 생각합니다. –

+0

이렇게 단순히 레이아웃의 상단이나 하단을 바라 보는 seperator를 추가하여 보이거나 보이지 않게 설정하십시오. – slayton

+0

slayton, 미안하지만 당신을 undestand하지 마십시오. 내 목록 항목에 구분선을 추가 할 수 있다고 이야기하지만이 구분선은 무엇입니까? TextView, ImageView 등? listview prpoperties에는 모든 목록에 공통된 구분자 속성이 있습니다. 모든 항목에 대해이 속성을 어떻게 설정할 수 있습니까? 어쩌면 위의 코드에서 언급 한 "네이티브"구분선을 해제하고 구분선을 내 목록 항목보기의 추가보기로 에뮬레이트 할 수 있습니까? 권리? –

16

목록보기의 비활성화 된 항목 (일반적으로 섹션 헤더로 사용됨)에 대한 가로 구분선을 숨길 수 있습니다. 이렇게하려면 을 areAllItemsEnabledBaseAdapter 콜백으로 반환하십시오. 다시 말하지만,이 기능은 비활성화 된보기에서만 작동합니다 (이 항목의 경우 isEnabled 콜백에 false을 반환 함). 이 콜백에 대한 설명서는 다소 모호합니다.

이 어댑터의 모든 항목을 사용할 수 있는지 여부를 나타냅니다. 이 메서드에 의해 반환 된 값이 시간이 지남에 따라 변경되면 값이 적용된다는 보장이 없습니다. 참이면, 그것은 (구분자가 없다.)

Reference 모든 항목을 선택하고 클릭 가능한 것을 의미한다.

구분 기호에 유의하십시오. 이것이 의도 된 행동인지 부작용인지 확실하지 않습니다. 그러나 그것은 효과적이다. ApiDemos List demo 5 (Separators)에서 확인할 수 있습니다.

+0

감사합니다.이 응답으로 내 day.Overriding BaseAdapter areAllItemsEnabled 저장하고 false 반환 tirck 않았다 – Manju

관련 문제