Android Open Source - Android-Todo-Application Todo List Adapter






From Project

Back to project page Android-Todo-Application.

License

The source code is released under:

MIT License

If you think the Android project Android-Todo-Application 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 com.samvandenberge.todo;
/*from   ww  w .  j a v a2  s. c om*/
import java.util.ArrayList;
import java.util.List;

import android.content.Context;
import android.graphics.Paint;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.CheckedTextView;

import com.samvandenberge.todo.model.Todo;

public class TodoListAdapter extends ArrayAdapter<Todo> {
  private List<Todo> todoItems = new ArrayList<Todo>();
  private static LayoutInflater inflater = null;
  private Context mContext;

  public TodoListAdapter(Context context, int textViewResourceId, List<Todo> items) {
    super(context, textViewResourceId, items);
    mContext = context;
    inflater = LayoutInflater.from(mContext);
    todoItems = items;
  }

  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
    View newView = convertView;
    final ViewHolder holder;
    Todo todo = todoItems.get(position);

    // inflate new view
    if (null == convertView) {
      holder = new ViewHolder();
      newView = inflater.inflate(R.layout.list_item_checked, null);
      holder.note = (CheckedTextView) newView.findViewById(R.id.tvNote);
      
      // store data in view
      newView.setTag(holder);
      // re-use view
    } else {
      holder = (ViewHolder) newView.getTag();
    }

    // refresh data
    holder.note.setText(todo.getNote());
    holder.note.setId((int)todo.getId());
    if (todo.getStatus() == 1) {
      holder.note.setChecked(true);
      holder.note.setPaintFlags(holder.note.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
    } else {
      holder.note.setChecked(false);
      holder.note.setPaintFlags(holder.note.getPaintFlags() & (~Paint.STRIKE_THRU_TEXT_FLAG));
    }

    return newView;
  }

  static class ViewHolder {
    CheckedTextView note;
  }
}




Java Source Code List

com.samvandenberge.todo.AboutActivity.java
com.samvandenberge.todo.MainActivity.java
com.samvandenberge.todo.OverviewFragment.java
com.samvandenberge.todo.TodoListAdapter.java
com.samvandenberge.todo.extension.TodoExtension.java
com.samvandenberge.todo.extension.TodoSettingsActivity.java
com.samvandenberge.todo.model.Todo.java
com.samvandenberge.todo.sqlite.DatabaseTodo.java
com.samvandenberge.todo.util.Helper.java