Android Open Source - AerisAndroidLibrary List Adapter






From Project

Back to project page AerisAndroidLibrary.

License

The source code is released under:

Apache License

If you think the Android project AerisAndroidLibrary 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.example.listview;
//ww w  .  ja va  2 s .c o  m
import java.util.List;

import android.app.Activity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

/**
 * Abstract class for display custom ListViews
 * 
 * @author bcollins
 * 
 * @param <T>
 *            Object that is being adapted to a ListView item
 */
public abstract class ListAdapter<T> extends IndexMonitorAdapter {

  /**
   * List of Data items to display
   */
  private List<T> items;
  /**
   * Inflater to inflate each custom view
   */
  private LayoutInflater mInflater;

  private int selectedDrawable;

  /**
   * Constructor for the MenardsListAdapter
   * 
   * @param items
   * @param activity
   */
  public ListAdapter(List<T> items, Activity activity, int selectedDrawable) {
    this.items = items;
    mInflater = LayoutInflater.from(activity);
    this.selectedDrawable = selectedDrawable;
  }

  /*
   * (non-Javadoc)
   * 
   * @see android.widget.Adapter#getCount()
   */
  @Override
  public int getCount() {
    if (items == null)
      return 0;
    return items.size();
  }

  /*
   * (non-Javadoc)
   * 
   * @see android.widget.Adapter#getItem(int)
   */
  @Override
  public T getItem(int position) {
    if (items == null)
      return null;
    return items.get(position);
  }

  /*
   * (non-Javadoc)
   * 
   * @see android.widget.Adapter#getItemId(int)
   */
  @Override
  public long getItemId(int position) {
    return 0;
  }

  /**
   * Fills old view with data, or creates a new view.
   * 
   * @param position
   *            - position to create view for
   * @param convertView
   *            - view to create/recycle
   * @return
   */
  @SuppressWarnings("unchecked")
  public View getItemView(int position, View convertView) {
    T item = items.get(position);
    AdapterHolder<T> holder = null;

    if (convertView == null) {
      holder = getHolder();
      convertView = holder.inflateview(mInflater);
      convertView.setTag(holder);

    } else {
      holder = (AdapterHolder<T>) convertView.getTag();
    }
    // set the color if selected.
    if (this.selectedIndex == position) {
      convertView.setBackgroundResource(selectedDrawable);
    } else {
      // 0 removes the resource
      convertView.setBackgroundResource(0);
    }

    holder.populateView((T) item, position);
    return convertView;
  }

  /*
   * (non-Javadoc)
   * 
   * @see android.widget.Adapter#getView(int, android.view.View,
   * android.view.ViewGroup)
   */
  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
    return getItemView(position, convertView);
  }

  /**
   * Gets the adapter ViewHolder for this adapter.
   * 
   * @return
   */
  public abstract AdapterHolder<T> getHolder();

  /**
   * Sets the list to another list.
   * 
   * @param list
   */
  public void setList(List<T> list) {
    items.clear();
    if (list == null)
      return;
    items.addAll(list);
  }

  /**
   * Deletes item in the list
   * 
   * @param position
   */
  public void deleteItemInList(int position) {
    items.remove(position);
  }

}




Java Source Code List

aeris.AerisUnusedStub.java
com.example.customendpoint.CustomEndpointAdapter.java
com.example.customendpoint.CustomMoonModel.java
com.example.customendpoint.CustomSunModel.java
com.example.customendpoint.CustomSunmoonFragment.java
com.example.customendpoint.CustomSunmoonHolder.java
com.example.customendpoint.CustomSunmoonModel.java
com.example.customendpoint.CustomSunmoonResponse.java
com.example.db.MyLocLoader.java
com.example.db.MyPlace.java
com.example.db.MyPlacesDb.java
com.example.db.MyPlacesSubject.java
com.example.db.SimpleCursorLoader.java
com.example.demoaerisproject.AerisDialog.java
com.example.demoaerisproject.AerisNotification.java
com.example.demoaerisproject.BaseApplication.java
com.example.demoaerisproject.DrawerActivity.java
com.example.demoaerisproject.LocationSearchActivity.java
com.example.demoaerisproject.MyLocsActivity.java
com.example.demoaerisproject.SettingsActivity.java
com.example.edithelp.EditTextEnterListener.java
com.example.edithelp.EnterPressedDelegate.java
com.example.fragment.AerisFragment.java
com.example.fragment.AerisPrefFragment.java
com.example.fragment.ExtForecastFragment.java
com.example.fragment.HeadlessFragment.java
com.example.fragment.MapFragment.java
com.example.fragment.NearbyObsFragment.java
com.example.fragment.ObservationFragment.java
com.example.fragment.OverviewFragment.java
com.example.fragment.RecentObsFragment.java
com.example.fragment.RefreshInterface.java
com.example.fragment.SplashFragment.java
com.example.fragment.WeekendFragment.java
com.example.listview.AdapterHolder.java
com.example.listview.DayNightPeriod.java
com.example.listview.ForecastAdapter.java
com.example.listview.ForecastItemHolder.java
com.example.listview.IndexMonitorAdapter.java
com.example.listview.ListAdapter.java
com.example.listview.ObservationAdapter.java
com.example.listview.ObservationItemHolder.java
com.example.listview.ObservationPeriodAdapter.java
com.example.listview.PlacesAdapter.java
com.example.listview.PlacesItemHolder.java
com.example.listview.RecentObsHolder.java
com.example.listview.WeekendAdapter.java
com.example.listview.WeekendItemHolder.java
com.example.menudrawer.HomeFragment.java
com.example.menudrawer.NavDrawerItem.java
com.example.menudrawer.NavDrawerListAdapter.java
com.example.preference.PrefManager.java
com.example.service.NotificationService.java
com.example.service.ScreenOnReceiver.java
com.example.service.ScreenOnService.java
com.example.util.FormatUtil.java
com.example.view.DayNightView.java
com.example.view.SmallForecastView.java
com.example.view.TemperatureInfoData.java
com.example.view.TemperatureWindowAdapter.java
com.example.view.TwoPartView.java