현재 커스텀리스트뷰를 사용중인데요.
해당 row를 클릭했을때 체크박스가 체크가 되도록 하려고합니다.
여기서 생기는 문제점인데요.
해당 row를 클릭하면... 해당 row의 체크박스가 선택이되야하는데...
체크박스의 position을 지정? 해주는 방법을모르겠습니다..
아래 소스와같이 했을때는 맨 마지막 체크박스에만 체크가되네요...
어떻게 해결을 해야할까요..?
public listdata_3(Context context, int layout,
ArrayList<EachList_4> listlist) {
this.context = context;
this.layout = layout;
this.datalist = listlist;
inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
return datalist.size();
}
@Override
public Object getItem(int position) {
return datalist.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
public String getBArtCode(int position) {
return datalist.get(position).BArtCode;
}
public String getBArtNAme(int position) {
return datalist.get(position).BArtNAme;
}
public String getBStanDard(int position) {
return datalist.get(position).BStanDard;
}
public String getBUnit(int position) {
return datalist.get(position).BUnit;
}
public String getBSaleCost(int position) {
return datalist.get(position).BSaleCost;
}
public String getBAMount(int position) {
return datalist.get(position).BAMount;
}
public String getBjAMount(int position) {
return datalist.get(position).BjAMount;
}
@Override
public View getView(final int position, View convertView, final ViewGroup parent) {
if (convertView == null) {
convertView = inflater.inflate(layout, parent, false);
}
final CheckBox chkbox = (CheckBox) convertView.findViewById(R.id.chkbox);
TextView TxtbonsaArtCode = (TextView) convertView
.findViewById(R.id.TxtbonsaArtCode);
TextView TxtbonsaArtNAme = (TextView) convertView
.findViewById(R.id.TxtbonsaArtNAme);
TextView TxtbonsaStanDard = (TextView) convertView
.findViewById(R.id.TxtbonsaStanDard);
TextView TxtbonsaUnit = (TextView) convertView
.findViewById(R.id.TxtbonsaUnit);
TextView TxtSaleCost = (TextView) convertView
.findViewById(R.id.TxtSaleCost);
TextView TxtbonsaAMount = (TextView) convertView
.findViewById(R.id.TxtbonsaAMount);
TextView TxtjAMount = (TextView) convertView
.findViewById(R.id.TxtjAMount);
TxtbonsaArtCode.setText(datalist.get(position).BArtCode);
TxtbonsaArtNAme.setText(datalist.get(position).BArtNAme);
TxtbonsaStanDard.setText(datalist.get(position).BStanDard);
TxtbonsaUnit.setText(datalist.get(position).BUnit);
TxtSaleCost.setText(datalist.get(position).BSaleCost+" ");
TxtbonsaAMount.setText(datalist.get(position).BAMount+" ");
TxtjAMount.setText(datalist.get(position).BjAMount+" ");
bonsajeago.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
chkbox.setChecked(true);
}
});
return convertView;
}
}