Created
September 15, 2016 07:24
-
-
Save mladenrakonjac/e0b33a866f3871d57206b394d623b4d3 to your computer and use it in GitHub Desktop.
Example of fragment that implements Contract.View
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package me.fleka.deltacity.presentation.shopping; | |
import android.os.Bundle; | |
import android.support.annotation.NonNull; | |
import android.support.design.widget.Snackbar; | |
import android.support.v4.app.Fragment; | |
import android.support.v7.widget.RecyclerView; | |
import android.support.v7.widget.SearchView; | |
import android.view.LayoutInflater; | |
import android.view.View; | |
import android.view.ViewGroup; | |
import android.widget.RelativeLayout; | |
import android.widget.Toast; | |
import butterknife.BindString; | |
import butterknife.BindView; | |
import butterknife.ButterKnife; | |
import java.util.List; | |
import me.fleka.deltacity.R; | |
import me.fleka.deltacity.domain.models.Category; | |
import me.fleka.deltacity.domain.models.Shop; | |
import static com.google.gson.internal.$Gson$Preconditions.checkNotNull; | |
/** | |
* Created by mladenrakonjac on 13/09/16. | |
*/ | |
public class ShoppingFragment extends Fragment implements ShoppingContract.View { | |
@BindString(R.string.err_no_internet_connection) String errNoInternetString; | |
@BindView(R.id.loading_relative_layout) RelativeLayout mLoadingRelativeLayout; | |
@BindView(R.id.no_content_relative_layout) RelativeLayout mNoContentRelativeLayou; | |
@BindView(R.id.search_view) SearchView mSearchView; | |
@BindView(R.id.category_recycler_view) RecyclerView mCategoryRecyclerView; | |
private ShoppingContract.Presenter mPresenter; | |
public static ShoppingFragment newInstance() { | |
return new ShoppingFragment(); | |
} | |
public ShoppingFragment() { | |
// Required empty public constructor | |
} | |
@Override public void onCreate(Bundle savedInstanceState) { | |
super.onCreate(savedInstanceState); | |
getActivity().setTitle(getString(R.string.shopping)); | |
} | |
@Override public void onResume() { | |
super.onResume(); | |
mPresenter.start(); | |
} | |
@Override public void setPresenter(@NonNull ShoppingContract.Presenter presenter) { | |
mPresenter = checkNotNull(presenter); | |
} | |
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, | |
Bundle savedInstanceState) { | |
View view = inflater.inflate(R.layout.fragment_shopping, container, false); | |
ButterKnife.bind(this, view); | |
return view; | |
} | |
@Override public void setLoadingIndicator(boolean active) { | |
if(active) | |
{ | |
mLoadingRelativeLayout.setVisibility(View.VISIBLE); | |
} else { | |
mLoadingRelativeLayout.setVisibility(View.GONE); | |
} | |
} | |
@Override public void showCategories(List<Category> categoryList) { | |
Toast.makeText(getActivity(), categoryList.get(0).getName(), Toast.LENGTH_SHORT).show(); | |
} | |
@Override public void showNoInternetConnection() { | |
Snackbar.make(mLoadingRelativeLayout, errNoInternetString, Snackbar.LENGTH_LONG).show(); | |
} | |
@Override public void showLoadingCategoriesError() { | |
} | |
@Override public void showListOfFoundedShopForSearch(List<Shop> shopList) { | |
} | |
@Override public void showNoShopsFound() { | |
mLoadingRelativeLayout.setVisibility(View.VISIBLE); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment