2015-02-03 2 views
1

내 응용 프로그램에서는 각 행의 각 목록보기 항목에 대해서만 동일한 레이아웃을 사용할 수 있습니다. 이것은 내가 원하는 응용 프로그램이 아니며 각각의 목록보기 항목에 대해 다른 레이아웃을 갖고 싶습니다.안드로이드 각 목록보기 항목에 다른 레이아웃을 사용하는 방법

달성하고자하는 예를 보려면 아래 스크린 샷을 참조하십시오.

different layout each listview items

+1

xml에 두 개의 다른 행을 만듭니다. 사용자 정의 어댑터 클래스에서 뷰 홀더를 사용하여 팽창 된 객체를 저장하고 어댑터의 필요에 따라 행을 선택하십시오. –

답변

1

당신은 안드로이드리스트 뷰 BaseAdapter를 통해 그것을 할 수 있습니다. BaseAdapter getView 메소드에서 이와 같은 코드를 추가 할 수 있습니다.

public View getView(final int position, View convertView, ViewGroup parent) { 
     if(item1 or your condition) 
     { 
      convertView=inflater.inflate(R.layout.from_right_row.xml, parent, false); 
     }else if(item2 or your condition) { 
      convertView=inflater.inflate(R.layout.from_left_row.xml, parent, false); 
     } 

     return convertView; 
    } 
+0

이것은 뷰를 팽창시키는 좋은 방법이 아닙니다. 부모 뷰로 null을 전달하지 마십시오. –

관련 문제