rv_select_device = (RecyclerView) findViewById(R.id.rv_select_device);
rv_select_device.setLayoutManager(new LinearLayoutManager(this));
mDeviceAdapter = new DeviceAdapter();
rv_select_device.setAdapter(mDeviceAdapter);
class DeviceAdapter extends RecyclerView.Adapter<DeviceAdapter.DeviceViewHolder> {

@Override
public DeviceViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
DeviceViewHolder holder = new DeviceViewHolder(LayoutInflater.from(
SelectCopyDeviceActivity.this).inflate(R.layout.item_select_copy_device, parent,
false));
return holder;
}

@Override
public void onBindViewHolder(DeviceViewHolder holder, int position) {
DeviceListResponse.Data data = dataList.get(position);
holder.tv_idevice_header_number.setText(data.getDevNo());
holder.tv_idevice_type.setText(data.getDevTypeNo());
holder.tv_inumber.setText(position + "");
holder.cb_iselect.setChecked(data.isSelectFlag());
holder.cb_iselect.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
dataList.get(position).setSelectFlag(checked);
}
});

}

@Override
public int getItemCount() {
return dataList.size();
}

class DeviceViewHolder extends RecyclerView.ViewHolder {

TextView tv_idevice_header_number;
TextView tv_inumber;
TextView tv_idevice_type;
CheckBox cb_iselect;

public DeviceViewHolder(View view) {
super(view);
tv_idevice_header_number = (TextView) view.findViewById(R.id.tv_idevice_header_number);
tv_inumber = (TextView) view.findViewById(R.id.tv_inumber);
tv_idevice_type = (TextView) view.findViewById(R.id.tv_idevice_type);
cb_iselect = (CheckBox) view.findViewById(R.id.cb_iselect);
}
}
}