Android

recyclerView 아이템 선택(클릭) 이벤트 (전체) Adapter 내에서...

Machine_웅 2018. 5. 2. 15:33
728x90
반응형

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
}

// 아이템 전체를 클릭하려구 했기 때문에, 레이아웃 자체를 클릭 이벤트를 준다.
((RowCell)holder).lay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent gotoEditAskHelp = new Intent(context,editAskHelp.class);
gotoEditAskHelp.putExtra("title",dataArray.get(position).title); // 제목
gotoEditAskHelp.putExtra("date",dataArray.get(position).date);
//startActivityForResult 를 쓰기위해서 앞에 클래스로 형변환한 context를 사용.
((리스트들을 보여주고 있는 엑티비티명)context).startActivityForResult();
}
});


}

 

 

 

 

 

 

 

// 뷰 홀더
private static class RowCell extends RecyclerView.ViewHolder {

public TextView date,title,address,pay;
public ImageView gender,photo,map;
public LinearLayout lay;


public RowCell(View view) {
super(view);

lay = (LinearLayout)view.findViewById(R.id.itemLayout);

}
}

 

 

설명 :

 

뷰홀더 내에서 선택할 아이템의 레이아웃에 아이디 값을 주고 레이아웃을 뷰홀더에  넣어줍니다.

 

onBindViewHolder 에서 위에와 같이 클릭이벤트를 사용합니다.

 

인텐트를 보내어 결과를 확인하기 위해서는 ((adapter가 있는 엑티비티)content).startActivityForResult();

를 사용하시면 됩니다.

 

728x90
반응형