Android Open Source - android Chef List Adapter






From Project

Back to project page android.

License

The source code is released under:

Apache License

If you think the Android project android 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.github.digin.android.adapters;
/*from   ww w  .j a va 2s  .  c  o m*/
import android.content.Context;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.github.digin.android.R;
import com.github.digin.android.fragments.LineupListFragment;
import com.github.digin.android.logging.Logger;
import com.github.digin.android.models.Chef;

import java.util.List;

/**
 * Created by david on 7/16/14.
 */
public class ChefListAdapter extends ArrayAdapter<Chef> {

    LayoutInflater inflater;

    public ChefListAdapter(Context context, List<Chef> chefs) {
        super(context, 0, chefs);

    }

    private LayoutInflater getLayoutInflater() {
        if (inflater == null)
            inflater = (LayoutInflater) getContext()
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        return inflater;
    }

    @Override
    public long getItemId(int position) {
        return getItem(position).hashCode();
    }

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

        View rowView = convertView;
        // reuse views
        if (rowView == null) {
            rowView = getLayoutInflater().inflate(R.layout.list_item_l, parent, false);

            // configure view holder
            ViewHolder viewHolder = new ViewHolder();
            viewHolder.title = (TextView) rowView.findViewById(R.id.titleView);
            viewHolder.dish = (TextView) rowView.findViewById(R.id.dishText);
            viewHolder.farm = (TextView) rowView.findViewById(R.id.farmText);
            viewHolder.chef = (TextView) rowView.findViewById(R.id.chefView);
            viewHolder.tentBadge = (ImageView) rowView
                    .findViewById(R.id.tentBadge);
            rowView.setTag(viewHolder);
        }

        // fill data
        ViewHolder holder = (ViewHolder) rowView.getTag();

        Chef chef = getItem(position);
        holder.title.setText(chef.getName());
        holder.chef.setText(Html.fromHtml("<b>Chef:</b> " + chef.getCook()));
        holder.dish.setText(Html.fromHtml("<b>Dish:</b> " + chef.getDish()));
        holder.farm.setText(Html.fromHtml("<b>Farm:</b> " + chef.getFarm()));

        holder.tentBadge.setImageResource(getBadgeForChef(chef));

        return rowView;
    }

    private int getBadgeForChef(Chef chef) {
        if (chef.getTent().contains("Tent")) {
            char tentNum = chef.getTent().charAt(chef.getTent().length() - 1);
            if (tentNum == '1') {
                return R.drawable.tent_one;
            } else if (tentNum == '2') {
                return R.drawable.tent_two;
            } else if (tentNum == '3') {
                return R.drawable.tent_badge; //TODO: Get image for tent 3.
            } else if (tentNum == '4') {
                return R.drawable.tent_four;
            } else if (tentNum == '5') {
                return R.drawable.tent_five;
            } else if (tentNum == '6') {
                return R.drawable.tent_six;
            } else {
                return R.drawable.tent_badge; //TODO: This image is too large.
            }
        } else if (chef.getTent().equals("Food Trucks")) {
            return R.drawable.truck_badge;
        } else {
            Logger.log(getClass(), "Chef has no tent: " + chef.getName() + " | " + chef.getTent());
            return R.drawable.tent_badge; //TODO: This image is too large.
        }

    }

    public void sort(LineupListFragment.Sorting sorting) {
        super.sort(sorting.getComparator());
        notifyDataSetChanged();
    }

    static class ViewHolder {
        public TextView title;
        public TextView dish;
        public TextView farm;
        public TextView chef;

        public ImageView tentBadge;
    }
}




Java Source Code List

com.github.digin.android.ApplicationTest.java
com.github.digin.android.DiginApplication.java
com.github.digin.android.ImageCacheEntry.java
com.github.digin.android.NavDrawerController.java
com.github.digin.android.NavDrawerItem.java
com.github.digin.android.Utils.java
com.github.digin.android.activities.MainActivity.java
com.github.digin.android.adapters.ChefListAdapter.java
com.github.digin.android.adapters.NavDrawerAdapter.java
com.github.digin.android.adapters.ParticipantListAdapter.java
com.github.digin.android.constants.LocationDataHolder.java
com.github.digin.android.constants.MapOverlayData.java
com.github.digin.android.constants.ParseID.java
com.github.digin.android.constants.ParseKeys.java
com.github.digin.android.constants.Station.java
com.github.digin.android.exceptions.InvalidClassException.java
com.github.digin.android.factories.BreweryFactory.java
com.github.digin.android.factories.ChefFactory.java
com.github.digin.android.factories.WineryFactory.java
com.github.digin.android.fragments.BoundedMapFragment.java
com.github.digin.android.fragments.BreweriesFragment.java
com.github.digin.android.fragments.BreweryDetailsFragment.java
com.github.digin.android.fragments.ChefListFragment.java
com.github.digin.android.fragments.DetailsFragment.java
com.github.digin.android.fragments.DeveloperFragment.java
com.github.digin.android.fragments.DiginAboutFragment.java
com.github.digin.android.fragments.FavoritesFragment.java
com.github.digin.android.fragments.LineupListFragment.java
com.github.digin.android.fragments.ParticipantDetailsFragment.java
com.github.digin.android.fragments.WineriesFragment.java
com.github.digin.android.fragments.WineryDetailsFragment.java
com.github.digin.android.listeners.OnBoundsQueryListener.java
com.github.digin.android.listeners.OnBoundsRetrievalListener.java
com.github.digin.android.listeners.OnParticipantQueryListener.java
com.github.digin.android.listeners.OnSingleParticipantQueryListener.java
com.github.digin.android.logging.AnalyticsHelper.java
com.github.digin.android.logging.Logger.java
com.github.digin.android.models.Brewery.java
com.github.digin.android.models.Chef.java
com.github.digin.android.models.ParseBackedModel.java
com.github.digin.android.models.Participant.java
com.github.digin.android.models.TemporaryParticipantPlaceholder.java
com.github.digin.android.models.Winery.java
com.github.digin.android.models.map.BoundPoint.java
com.github.digin.android.models.map.Bounds.java
com.github.digin.android.repositories.BoundsStore.java
com.github.digin.android.repositories.BreweryStore.java
com.github.digin.android.repositories.ChefsStore.java
com.github.digin.android.repositories.FavoritesStore.java
com.github.digin.android.repositories.WineryStore.java
com.github.digin.android.tasks.ParseAllBoundsTask.java
com.github.digin.android.tasks.ParseAllBreweriesTask.java
com.github.digin.android.tasks.ParseAllChefsTask.java
com.github.digin.android.tasks.ParseAllWineriesTask.java
com.nirhart.parallaxscroll.views.ParallaxExpandableListView.java
com.nirhart.parallaxscroll.views.ParallaxListViewHelper.java
com.nirhart.parallaxscroll.views.ParallaxListView.java
com.nirhart.parallaxscroll.views.ParallaxScrollView.java
com.nirhart.parallaxscroll.views.ParallaxedView.java