2010-07-20 3 views
2

저는 사용자 정의 어댑터를 사용하는 ListView입니다. ListView에서 항목을 동적으로 추가/제거하고 싶습니다. 내보기 어댑터에서 getView() 메서드 내부의 모든 것을 시도했습니다. 나는 돌아 오는보기에 setVisiblity(View.GONE) 일을 시도했다. 실제로 뷰를 그리지는 않지만 여전히 뷰 공간을 할당하며 빈 검은 색 공간입니다.목록보기에서보기 만들기 invisible android

심지어 ListView의 항목을 표시 할 수 있습니까?

+0

항목을 GONE으로 설정하는 방법을 보여줄 수 있습니까? –

+0

반환보기를 GONE으로 설정하면 ListView에 공간을 할당해서는 안됩니다. – Pentium10

+0

나는 공간을 할당해서는 안되는 데 동의하지만 ... – BladeCoder

답변

5

ListView에서 항목을 제거하려면보기를 조작하려고 시도하는 대신 연관 ListAdapter이 반환하는 값을 변경합니다.

+0

예, 가시성을 망치는 대신 완전히 제거하십시오. – st0le

+0

나는 2 개의 arrayList를 생성하고 앞뒤로 내 아이템을 왕복했다 (하나의 완전한리스트와 하나의 표시된리스트) – Falmarri

1

반환 된 뷰와 그 내부의 모든 뷰에 대해 setVisiblity (View.GONE)을 호출해야합니다. 전달 된 변환보기를 재사용하는 경우 표시하려는 모든보기에서 setVisiblity (View.VISIBLE)를 호출해야합니다.

보이지 않는 뷰가 많은 경우 구분선 높이를 0으로 설정하고 반환 된 뷰에 고유 한 구분선을 추가해야 할 수 있습니다. 그렇지 않으면 '보이지 않는'뷰에는 가시적 인 구분선이 있으며 가시적 인보기 사이에 눈에 띄는 회색 선이 생깁니다.

관련 문제