Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class AdminNotesAdapter extends BaseAdapter {
- private ArrayList<AdminNoteShortenHolder> mNotesList = new ArrayList<AdminNoteShortenHolder>();
- private AdminNoteShortenHolder mNoteHolder = new AdminNoteShortenHolder();
- private ViewHolder holder = null;
- private Activity activity;
- public AdminNotesAdapter(ArrayList<AdminNoteShortenHolder> array,
- Activity activity) {
- this.activity = activity;
- this.mNotesList = array;
- }
- @Override
- public int getCount() {
- return mNotesList.size();
- }
- @Override
- public Object getItem(int position) {
- return null;
- }
- @Override
- public long getItemId(int position) {
- return 0;
- }
- @Override
- public View getView(int position, View convertView, ViewGroup parent) {
- mNoteHolder = mNotesList.get(position);
- if (convertView == null) {
- convertView = activity.getLayoutInflater().inflate(
- R.layout.row_adminnotes, null);
- holder = new ViewHolder(convertView);
- holder.cb_row_adminNotesCheck
- .setOnCheckedChangeListener(new OnCheckedChangeListener() {
- @Override
- public void onCheckedChanged(CompoundButton buttonView,
- boolean isChecked) {
- int getPosition = (Integer) buttonView.getTag();
- mNotesList.get(getPosition).setSelected(isChecked);
- }
- });
- convertView.setTag(holder);
- convertView.setTag(R.id.cb_row_adminnotesCheck,
- holder.cb_row_adminNotesCheck);
- } else {
- holder = (ViewHolder) convertView.getTag();
- }
- holder.img_row_adminnotesNew
- .setVisibility(0 == mNoteHolder.note_read ? View.VISIBLE
- : View.GONE);
- holder.txt_row_adminnotesNoteSubject.setText(mNoteHolder.note_subject);
- holder.txt_row_adminnotesNoteUser.setText("from "
- + mNoteHolder.note_from_user + " | " + mNoteHolder.note_time);
- holder.txt_row_adminnotesNotePreview.setText(mNoteHolder.note_content);
- holder.cb_row_adminNotesCheck.setTag(position);
- holder.cb_row_adminNotesCheck.setChecked(mNotesList.get(position)
- .isSelected());
- return convertView;
- }
- static class ViewHolder {
- public ImageView img_row_adminnotesNew;
- public TextView txt_row_adminnotesNoteSubject;
- public TextView txt_row_adminnotesNoteUser;
- public TextView txt_row_adminnotesNotePreview;
- public CheckBox cb_row_adminNotesCheck;
- public ViewHolder(View convertView) {
- img_row_adminnotesNew = (ImageView) convertView
- .findViewById(R.id.img_row_adminnotesNew);
- txt_row_adminnotesNoteSubject = (TextView) convertView
- .findViewById(R.id.txt_row_adminnotesNoteSubject);
- txt_row_adminnotesNoteUser = (TextView) convertView
- .findViewById(R.id.txt_row_adminnotesNoteUser);
- txt_row_adminnotesNotePreview = (TextView) convertView
- .findViewById(R.id.txt_row_adminnotesNotePreview);
- cb_row_adminNotesCheck = (CheckBox) convertView
- .findViewById(R.id.cb_row_adminnotesCheck);
- }
- }
- }
- public class AdminNoteShortenHolder extends BaseHolder {
- public int note_id;
- public String note_from_user;
- public String note_subject;
- public String note_content;
- public String note_time;
- public int note_read;
- private boolean selected;
- @Override
- public void parse(JSONObject jsonObject) {
- note_id = jsonObject.optInt("note_id", -1);
- note_from_user = jsonObject.optString("note_from_user");
- note_subject = jsonObject.optString("note_subject");
- note_content = jsonObject.optString("note_content");
- note_time = jsonObject.optString("note_time");
- note_read = jsonObject.optInt("note_read", -1);
- }
- public boolean isSelected() {
- return selected;
- }
- public void setSelected(boolean selected) {
- this.selected = selected;
- }
- }
- private Map<Integer, Boolean> map = new HashMap<Integer, Boolean>();
- @Override
- public View getView(final int position, View convertView, ViewGroup parent) {
- Boolean present = map.get(position);
- if(present != null && present.booleanValue()){
- // set checkbox checked
- } else {
- // set checkbox un-cheked
- }
- holder.cb_row_adminNotesCheck.setOnCheckedChangeListener(new OnCheckedChangeListener() {
- @Override
- public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
- int getPosition = (Integer) buttonView.getTag();
- mNotesList.get(getPosition).setSelected(isChecked);
- if(isChecked){
- map.put(position, true);
- } else {
- map.remove(position);
- }
- setButtonVisibility();
- }
- });
- }
- private void setButtonVisibility()
- {
- if(map.size() > 0){
- // set button visible
- } else {
- // set button invisible
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement