vendredi 9 janvier 2015

How to add the friend with checkbox in android

Hi In the below code I am using custom adapter to display the name with image and checkbox.Now,My problem is based on friend position I want to add with checkbox.


My layout like this:


image friendname with checkbox


Now, I want based on friend postion I want to return the checkbox is added to friend or not.suppose if I am selecting the username:user1 this one got checked.then I want to return username with checked postion for that I am using listview.


java



private class FriendListAdapter extends BaseAdapter
{
class ViewHolder {
TextView text;
ImageView icon;
CheckBox check1;



}
private LayoutInflater mInflater;
private Bitmap mOnlineIcon;
private Bitmap mOfflineIcon;

private FriendInfo[] friends = null;




public FriendListAdapter(Context context) {
super();

mInflater = LayoutInflater.from(context);

mOnlineIcon = BitmapFactory.decodeResource(context.getResources(), R.drawable.greenstar);
mOfflineIcon = BitmapFactory.decodeResource(context.getResources(), R.drawable.redstar);

}

public void setFriendList(FriendInfo[] friends)
{
this.friends = friends;

}


public int getCount() {

return friends.length;
}


public FriendInfo getItem(int position) {

return friends[position];
}

public long getItemId(int position) {

return 0;
}

public View getView(final int position, View convertView, ViewGroup parent) {

final ViewHolder holder;


if (convertView == null)
{
convertView = mInflater.inflate(R.layout.grouplist, null);


holder = new ViewHolder();
holder.text = (TextView) convertView.findViewById(R.id.text);
holder.icon = (ImageView) convertView.findViewById(R.id.icon);
holder.check1 = (CheckBox) convertView.findViewById(R.id.checkBox1);

convertView.setTag(holder);

}

else {

holder = (ViewHolder) convertView.getTag();
}


holder.text.setText(friends[position].userName);
holder.icon.setImageBitmap(friends[position].status == STATUS.ONLINE ? mOnlineIcon : mOfflineIcon);
holder.check1.setChecked(checkBoxState[position]);

holder.check1.setOnCheckedChangeListener(new OnCheckedChangeListener() {



@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
checkBoxState[position] = isChecked;

}

});


return convertView;
}

}




Aucun commentaire:

Enregistrer un commentaire