2016-12-26 1 views
0

첨부 된 이미지의 레이아웃을 만들려고했지만 아주보기가 어려웠습니다. 그런 다음 완전히 지우고 여전히 어떻게 할 지 생각했습니다. 어떤 사람이 첨부 된 이미지의 레이아웃을 디자인 해 주실 수 있습니까?이 레이아웃에 가장 적합한 레이아웃을 알려 주시면 더 자세히 사용자 정의하겠습니다. 그것은 2의 -첨부 된 이미지의 Android 레이아웃

이름, 나이를 가지고
  1. 는 등

    나에 대해 가지고
  2. :

    User profile layout

    당신은 상자의 세 가지 유형이있다, 자세히 보면 - 상자. 각 유형의 하나의 상자를 디자인 할 수 있다면 연기, 알코올 등을위한 옵션이 있습니다

  3. ...

는, 나는 앞서 진행 방법의 공정한 생각을해야합니다.

+0

이 데이터는 동적입니까? 나는 그들이 서버에서오고 변화 할 것 인가요? 또는 당신은 그것을 하드 코딩입니까? –

+0

항목 수는 이름 나이와 같은 키 ...로 유지됩니다. 몸체는 동일하게 유지 될 것입니다 ... 값은 서버에서 올 것입니다 – user7327850

+0

그래서 가장 적합한 승인자는 recyclerView를 사용할 것입니다. 다른 아이템 레이아웃을 디자인하고 스위치 케이스를 적용하는 것은 어댑터 클래스입니다. 나는 답례를해야합니까? –

답변

0

코드를 복사하여 붙여 넣거나 읽지 말고 이해하려고 시도하십시오.

다른 레이아웃에 대해 다른 viewHolder 클래스를 만들고 onCreateVIewHolder에 다른보기를 첨부해야합니다.

private Activity currActivity; 
private Context currContext; 
private List<CommonCategory> itemList; 

public HomeFeedRecyclerAdapter(Activity currActivity, Context currContext, ArrayList<CommonCategory> itemList) { 
this.itemList = itemList; 
this.currActivity = currActivity; 
this.currContext = currContext; 
} 


@Override 
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
View view; 
RecyclerView.ViewHolder viewHolder; 

switch (viewType) { 
case TYPE_ONE: { 
    view = getLayoutView(parent, R.layout.list_one); 
    viewHolder = new EditTextViewHolders(view, currActivity); 
    break; 
} 
case TYPE_TWO: { 
    view = getLayoutView(parent, R.layout.list_two); 
    viewHolder = new TextViewHolders(view, currActivity, getItem(viewType)); 
    break; 
} 
default: { 
    viewHolder = null; 
} 

} 
return viewHolder; 
} 

그리고 (이 경우 EditTextViewHolders 및 TextViewHolders에서) 두 개의 서로 다른 viewHolder 클래스를 생성하고 거기 뷰를 정의 예를 들면 다음과 같습니다. 각 레이아웃에 특정 ID를 부여하면 쉽게 활용할 수 있습니다.

관련 문제