Android Open Source - android Favorites Fragment






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.fragments;
/*w  ww  . j  a  v a 2  s  .c  o m*/
import android.app.Activity;
import android.os.Bundle;
import android.provider.Telephony;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ListAdapter;
import android.widget.ProgressBar;
import android.widget.TextView;

import com.github.digin.android.R;
import com.github.digin.android.adapters.ChefListAdapter;
import com.github.digin.android.adapters.ParticipantListAdapter;
import com.github.digin.android.logging.AnalyticsHelper;
import com.github.digin.android.logging.Logger;
import com.github.digin.android.models.Brewery;
import com.github.digin.android.models.Chef;
import com.github.digin.android.models.Participant;
import com.github.digin.android.models.Winery;
import com.github.digin.android.repositories.FavoritesStore;

import java.util.List;

/**
 * Created by mike on 8/13/14.
 */
public class FavoritesFragment extends LineupListFragment<Participant> {

    public FavoritesFragment() {
    }

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        Participant participant = ((ParticipantListAdapter<Participant>) getListAdapter()).getItem(position);

        AnalyticsHelper.sendEvent(getActivity(), "List_Click", FavoritesFragment.class.getName(), participant.getName());

        Logger.log(LineupListFragment.class, "onItemClick(): " + participant.getName());

        if(participant instanceof Chef) {
            DetailsFragment details = DetailsFragment.newInstance((Chef) participant);
            getFragmentManager().beginTransaction().addToBackStack(DetailsFragment.class.getName()).add(R.id.content_frame, details, DetailsFragment.class.getName()).commit();
        } else if (participant instanceof Brewery) {
            BreweryDetailsFragment details = BreweryDetailsFragment.newInstance((Brewery) participant);
            getFragmentManager().beginTransaction().addToBackStack(DetailsFragment.class.getName()).add(R.id.content_frame, details, BreweryDetailsFragment.class.getName()).commit();
        } else if (participant instanceof Winery) {
            WineryDetailsFragment details = WineryDetailsFragment.newInstance((Winery) participant);
            getFragmentManager().beginTransaction().addToBackStack(DetailsFragment.class.getName()).add(R.id.content_frame, details, WineryDetailsFragment.class.getName()).commit();
        }
    }

    @Override
    public void onAttach(final Activity activity) {
        super.onAttach(activity);

        AnalyticsHelper.sendScreenView(getActivity(), FavoritesFragment.class, "Favorites");
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View v =  super.onCreateView(inflater, container, savedInstanceState);
        TextView tv = (TextView) v.findViewById(R.id.txt_progress);
        tv.setText("Loading Favorites");
        return v;
    }

    @Override
    public String getErrorMessage() {
        return "It looks like you have not selected any favorites.\nClick \"favorite\" at the bottom of any chef's page to favorite them.";
    }

    @Override
    public void getChefs() {
        FavoritesStore.getFavorites(getActivity(), this);
    }

    @Override
    public ListAdapter getAdapterForParticipants(List<Participant> items) {
        return new ParticipantListAdapter<Participant>(getActivity(), items);
    }


    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.action_sort:
                ((ParticipantListAdapter<Participant>) getListAdapter()).sort(otherSorting);
                otherSorting = ((otherSorting == Sorting.NAME) ? Sorting.LOCATION : Sorting.NAME);
                item.setTitle(String.format(SORTTEXT, otherSorting.name().toLowerCase()));
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }


}




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