public class PostsFragment extends android.support.v4.app.Fragment implements android.support.v4.app.LoaderManager.LoaderCallbacks<java.util.List<Post>>, android.support.v7.widget.SearchView.OnQueryTextListener, MultiSelectionSpinner.OnMultipleItemsSelectedListener
RecyclerViewAdapterPosts
,
MultiSelectionSpinner
,
PostsLoader
Modifier and Type | Class and Description |
---|---|
private class |
PostsFragment.Task
AsyncTask to get categories and displays them to the spinner
|
Modifier and Type | Field and Description |
---|---|
private RecyclerViewAdapterPosts |
adapter |
private android.support.v7.app.ActionBar |
bar |
private android.widget.RelativeLayout |
lay |
private PostsFragment.Task |
loader |
private android.widget.ProgressBar |
progress |
private java.lang.String |
query |
private android.support.v7.widget.RecyclerView |
recycler |
private boolean |
rssAllowed |
private MultiSelectionSpinner |
spinner |
Constructor and Description |
---|
PostsFragment() |
Modifier and Type | Method and Description |
---|---|
android.support.v4.content.Loader<java.util.List<Post>> |
onCreateLoader(int id,
android.os.Bundle args)
Create a loader and starts it to retrieve posts.
|
void |
onCreateOptionsMenu(android.view.Menu menu,
android.view.MenuInflater inflater)
Sets up the menu & search field.
|
android.view.View |
onCreateView(android.view.LayoutInflater inflater,
android.view.ViewGroup parent,
android.os.Bundle savedInstanceState) |
void |
onDetach() |
void |
onLoaderReset(android.support.v4.content.Loader<java.util.List<Post>> loader) |
void |
onLoadFinished(android.support.v4.content.Loader<java.util.List<Post>> loader,
java.util.List<Post> data)
Gets the data and sets them to the RecyclerViewAdapter
|
boolean |
onQueryTextChange(java.lang.String query)
Event listeners to search field text changes, gets query and filters the RecyclerView according to it
|
boolean |
onQueryTextSubmit(java.lang.String query) |
void |
onResume() |
void |
onStop() |
void |
onViewCreated(android.view.View view,
android.os.Bundle savedInstanceState)
Sets view up, starts loading posts.
|
void |
selectedIndices(java.util.List<java.lang.Integer> indices) |
void |
selectedStrings(java.util.List<java.lang.String> strings)
Interface implementation, gets the selected categories and filter the RecyclerView
|
dump, equals, getActivity, getAllowEnterTransitionOverlap, getAllowReturnTransitionOverlap, getArguments, getChildFragmentManager, getContext, getEnterTransition, getExitTransition, getFragmentManager, getHost, getId, getLayoutInflater, getLayoutInflater, getLifecycle, getLoaderManager, getParentFragment, getReenterTransition, getResources, getRetainInstance, getReturnTransition, getSharedElementEnterTransition, getSharedElementReturnTransition, getString, getString, getTag, getTargetFragment, getTargetRequestCode, getText, getUserVisibleHint, getView, getViewModelStore, hashCode, hasOptionsMenu, instantiate, instantiate, isAdded, isDetached, isHidden, isInLayout, isMenuVisible, isRemoving, isResumed, isStateSaved, isVisible, onActivityCreated, onActivityResult, onAttach, onAttach, onAttachFragment, onConfigurationChanged, onContextItemSelected, onCreate, onCreateAnimation, onCreateAnimator, onCreateContextMenu, onDestroy, onDestroyOptionsMenu, onDestroyView, onGetLayoutInflater, onHiddenChanged, onInflate, onInflate, onLowMemory, onMultiWindowModeChanged, onOptionsItemSelected, onOptionsMenuClosed, onPause, onPictureInPictureModeChanged, onPrepareOptionsMenu, onRequestPermissionsResult, onSaveInstanceState, onStart, onViewStateRestored, postponeEnterTransition, registerForContextMenu, requestPermissions, requireActivity, requireContext, requireFragmentManager, requireHost, setAllowEnterTransitionOverlap, setAllowReturnTransitionOverlap, setArguments, setEnterSharedElementCallback, setEnterTransition, setExitSharedElementCallback, setExitTransition, setHasOptionsMenu, setInitialSavedState, setMenuVisibility, setReenterTransition, setRetainInstance, setReturnTransition, setSharedElementEnterTransition, setSharedElementReturnTransition, setTargetFragment, setUserVisibleHint, shouldShowRequestPermissionRationale, startActivity, startActivity, startActivityForResult, startActivityForResult, startIntentSenderForResult, startPostponedEnterTransition, toString, unregisterForContextMenu
private android.support.v7.widget.RecyclerView recycler
private RecyclerViewAdapterPosts adapter
private MultiSelectionSpinner spinner
private android.widget.ProgressBar progress
private android.support.v7.app.ActionBar bar
private PostsFragment.Task loader
private java.lang.String query
private android.widget.RelativeLayout lay
private boolean rssAllowed
public android.view.View onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup parent, android.os.Bundle savedInstanceState)
onCreateView
in class android.support.v4.app.Fragment
public void onViewCreated(android.view.View view, android.os.Bundle savedInstanceState)
onViewCreated
in class android.support.v4.app.Fragment
view
- viewsavedInstanceState
- oldStatepublic void onResume()
onResume
in class android.support.v4.app.Fragment
public void onStop()
onStop
in class android.support.v4.app.Fragment
public android.support.v4.content.Loader<java.util.List<Post>> onCreateLoader(int id, android.os.Bundle args)
onCreateLoader
in interface android.support.v4.app.LoaderManager.LoaderCallbacks<java.util.List<Post>>
id
- the id of the loaderargs
- bundle of arguments (not used)PostsLoader
public void onLoadFinished(android.support.v4.content.Loader<java.util.List<Post>> loader, java.util.List<Post> data)
onLoadFinished
in interface android.support.v4.app.LoaderManager.LoaderCallbacks<java.util.List<Post>>
loader
- the loader that retrieved the datadata
- the awaited dataRecyclerViewAdapterPosts.setData(List)
public void onLoaderReset(android.support.v4.content.Loader<java.util.List<Post>> loader)
onLoaderReset
in interface android.support.v4.app.LoaderManager.LoaderCallbacks<java.util.List<Post>>
public void onCreateOptionsMenu(android.view.Menu menu, android.view.MenuInflater inflater)
onCreateOptionsMenu
in class android.support.v4.app.Fragment
menu
- menuinflater
- inflaterpublic boolean onQueryTextSubmit(java.lang.String query)
onQueryTextSubmit
in interface android.support.v7.widget.SearchView.OnQueryTextListener
public boolean onQueryTextChange(java.lang.String query)
onQueryTextChange
in interface android.support.v7.widget.SearchView.OnQueryTextListener
query
- the text queryRecyclerViewAdapterPosts.filter(String)
public void selectedIndices(java.util.List<java.lang.Integer> indices)
selectedIndices
in interface MultiSelectionSpinner.OnMultipleItemsSelectedListener
public void selectedStrings(java.util.List<java.lang.String> strings)
selectedStrings
in interface MultiSelectionSpinner.OnMultipleItemsSelectedListener
strings
- the selected categoriesRecyclerViewAdapterPosts.filterByCategories(List, String)
,
MultiSelectionSpinner.getSelectedStrings()
public void onDetach()
onDetach
in class android.support.v4.app.Fragment