Android Open Source - CMPUT-301-Assignment1 Item Adapter






From Project

Back to project page CMPUT-301-Assignment1.

License

The source code is released under:

GNU General Public License

If you think the Android project CMPUT-301-Assignment1 listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package ca.ualberta.cs.jkeeling.a1todolist.adapters;
import java.util.List;
import android.content.Context;
import android.graphics.Color;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import ca.ualberta.cs.jkeeling.a1todolist.R;
import ca.ualberta.cs.jkeeling.a1todolist.models.CustomTextView;
import ca.ualberta.cs.jkeeling.a1todolist.models.TDItem;  
//from   w w w .  ja  v  a  2  s  .  c  om
// Custom adapter class to enable custom rows in a ListView
// Each custom rows includes a checkbox, textview, and button
public class ItemAdapter extends ArrayAdapter<TDItem> {
  private List<TDItem> itemList;
  private Context context;
  private int resource;
  
  private class ViewHolder {
       CustomTextView name;
       CheckBox box;
      }
  
  public ItemAdapter(Context context, int resource, List<TDItem> itemList) {
    super(context, resource, itemList);
    this.context = context;
    this.itemList = itemList;
    this.resource = resource;
    // TODO Auto-generated constructor stub
  }
  
  @Override
  public View getView(int position, View convertView, ViewGroup parent){
    //Used createViewFromResource + blog
    ViewHolder holder = null;
    
    if (convertView == null){
      LayoutInflater vi = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
      convertView = vi.inflate(this.resource, null);
      holder = new ViewHolder();            
      holder.name = (CustomTextView) convertView.findViewById(R.id.textView);
        holder.box = (CheckBox) convertView.findViewById(R.id.checkBox);
      convertView.setTag(holder);         
    }
    else {
      holder = (ViewHolder) convertView.getTag();
    }      
    TDItem item = itemList.get(position);
    holder.name.setText(item.getName());
    holder.name.setUId(item.getId());
    holder.box.setChecked(item.getChecked());
    if (item.getSelected() == true){
      convertView.setBackgroundColor(Color.rgb(255, 153, 0));
    }
    else {
      convertView.setBackgroundColor(Color.WHITE);
    }
    return convertView;
  }    
}




Java Source Code List

ca.ualberta.cs.jkeeling.a1todolist.ArchiveActivity.java
ca.ualberta.cs.jkeeling.a1todolist.MainActivity.java
ca.ualberta.cs.jkeeling.a1todolist.SummaryActivity.java
ca.ualberta.cs.jkeeling.a1todolist.adapters.ItemAdapter.java
ca.ualberta.cs.jkeeling.a1todolist.data.FileDataManager.java
ca.ualberta.cs.jkeeling.a1todolist.data.IDataManager.java
ca.ualberta.cs.jkeeling.a1todolist.models.CustomTextView.java
ca.ualberta.cs.jkeeling.a1todolist.models.TDItem.java