Class ChallengeResponsesListFragment<A extends ChallengeResponsesAdapter,V extends ChallengeResponsesListView,P extends ChallengeResponsesListPresenter<V>>
- java.lang.Object
-
- androidx.fragment.app.Fragment
-
- com.cheetahdigital.uikit.architecture.mvp.MvpFragmentView<V,P>
-
- com.cheetahdigital.uikit.architecture.lce.LceFragmentView<V,P>
-
- com.cheetahdigital.uikit.architecture.refreshable.RefreshableFragmentView<V,P>
-
- com.cheetahdigital.uikit.widget.list.ListFragmentView<V,P>
-
- com.cheetahdigital.uikit.widget.list.EndlessListFragmentView<A,V,P>
-
- com.cheetahdigital.challenges.ui.responses.ChallengeResponsesListFragment<A,V,P>
-
- All Implemented Interfaces:
android.content.ComponentCallbacks
,android.view.View.OnCreateContextMenuListener
,androidx.activity.result.ActivityResultCaller
,androidx.lifecycle.HasDefaultViewModelProviderFactory
,androidx.lifecycle.LifecycleOwner
,androidx.lifecycle.ViewModelStoreOwner
,androidx.savedstate.SavedStateRegistryOwner
,androidx.swiperefreshlayout.widget.SwipeRefreshLayout.OnRefreshListener
,ChallengeResponsesListView
,com.cheetahdigital.corekit.sdk.analytics.AnalyticsManager.AnalyticsScreen
,com.cheetahdigital.uikit.architecture.lce.LceView
,com.cheetahdigital.uikit.architecture.lce.MvpLceView
,com.cheetahdigital.uikit.architecture.mvp.MvpView
,com.cheetahdigital.uikit.architecture.refreshable.RefreshableView
,com.cheetahdigital.uikit.widget.list.EndlessListView
,com.cheetahdigital.uikit.widget.list.ListView
public class ChallengeResponsesListFragment<A extends ChallengeResponsesAdapter,V extends ChallengeResponsesListView,P extends ChallengeResponsesListPresenter<V>> extends com.cheetahdigital.uikit.widget.list.EndlessListFragmentView<A,V,P> implements ChallengeResponsesListView, com.cheetahdigital.corekit.sdk.analytics.AnalyticsManager.AnalyticsScreen
Class that handles list ofChallengeResponse
Can receive the following intent extras:- RESPONSE_PARAMETERS - instance of
ChallengeParams
used to populate the Challenges API calls
-
-
Field Summary
Fields Modifier and Type Field Description protected ChallengeResponsesClickListener
mListener
static java.lang.String
RESPONSE_PARAMETERS
-
Fields inherited from class com.cheetahdigital.uikit.widget.list.EndlessListFragmentView
mEndlessRecyclerOnScrollListener
-
Fields inherited from class com.cheetahdigital.uikit.widget.list.ListFragmentView
mLinearLayoutManager, mListView, mSelectedPosition
-
-
Constructor Summary
Constructors Constructor Description ChallengeResponsesListFragment()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
appendChallengeResponsesList(java.util.List<ChallengeResponse> responses, int totalEntries)
Notifies the view when GET challenge responses API with pagination is successfulprotected void
captureSharedElementValues(android.content.Intent intent)
Captures the shared element and passes its values to intent.protected ChallengeResponsesAdapter
createChallengeResponsesAdapter(java.util.List<ChallengeResponse> challengeResponses, ChallengeResponsesClickListener listener)
Create an instance ofChallengesAdapter
.protected P
createPresenter()
InstantiateMvpFragmentView.mPresenter
to be used for thisMvpActivityView
protected int
getContentLayoutId()
Provide the Content Layout ID which is of a Layout Resource Reference of Androidint
getScreenName()
void
onViewCreated(android.view.View view, android.os.Bundle savedInstanceState)
void
showChallengeResponsesList(java.util.List<ChallengeResponse> responses, int totalEntries)
Notifies the view when GET challenge responses API is successfulvoid
showErrorMessage(java.lang.String error)
Notifies the view when GET challenge responses API failed-
Methods inherited from class com.cheetahdigital.uikit.widget.list.EndlessListFragmentView
onCreateView, onFinishLoadMore, onFinishRefresh, onLoadMoreFailed, setListTotalEntries
-
Methods inherited from class com.cheetahdigital.uikit.widget.list.ListFragmentView
getLayoutManager, isListAnimationEnabled, onAttach, setExitTransition, showContent, startActivity, startActivityForResult
-
Methods inherited from class com.cheetahdigital.uikit.architecture.refreshable.RefreshableFragmentView
onRefresh, onRefreshFailed, reloadData, showError, showLoading, startRefresh
-
Methods inherited from class com.cheetahdigital.uikit.architecture.lce.LceFragmentView
onLoadFailed, onLoadSuccess, setErrorViewClickListener
-
Methods inherited from class com.cheetahdigital.uikit.architecture.mvp.MvpFragmentView
getPresenter, getSharedElementViews, initSharedElementValues, isSharedAnimationEnabled, onDestroyView
-
Methods inherited from class androidx.fragment.app.Fragment
dump, equals, getActivity, getAllowEnterTransitionOverlap, getAllowReturnTransitionOverlap, getArguments, getChildFragmentManager, getContext, getDefaultViewModelProviderFactory, getEnterTransition, getExitTransition, getFragmentManager, getHost, getId, getLayoutInflater, getLayoutInflater, getLifecycle, getLoaderManager, getParentFragment, getParentFragmentManager, getReenterTransition, getResources, getRetainInstance, getReturnTransition, getSavedStateRegistry, getSharedElementEnterTransition, getSharedElementReturnTransition, getString, getString, getTag, getTargetFragment, getTargetRequestCode, getText, getUserVisibleHint, getView, getViewLifecycleOwner, getViewLifecycleOwnerLiveData, getViewModelStore, hashCode, hasOptionsMenu, instantiate, instantiate, isAdded, isDetached, isHidden, isInLayout, isMenuVisible, isRemoving, isResumed, isStateSaved, isVisible, onActivityCreated, onActivityResult, onAttach, onAttachFragment, onConfigurationChanged, onContextItemSelected, onCreate, onCreateAnimation, onCreateAnimator, onCreateContextMenu, onCreateOptionsMenu, onDestroy, onDestroyOptionsMenu, onDetach, onGetLayoutInflater, onHiddenChanged, onInflate, onInflate, onLowMemory, onMultiWindowModeChanged, onOptionsItemSelected, onOptionsMenuClosed, onPause, onPictureInPictureModeChanged, onPrepareOptionsMenu, onPrimaryNavigationFragmentChanged, onRequestPermissionsResult, onResume, onSaveInstanceState, onStart, onStop, onViewStateRestored, postponeEnterTransition, postponeEnterTransition, registerForActivityResult, registerForActivityResult, registerForContextMenu, requestPermissions, requireActivity, requireArguments, requireContext, requireFragmentManager, requireHost, requireParentFragment, requireView, setAllowEnterTransitionOverlap, setAllowReturnTransitionOverlap, setArguments, setEnterSharedElementCallback, setEnterTransition, setExitSharedElementCallback, setExitTransition, setHasOptionsMenu, setInitialSavedState, setMenuVisibility, setReenterTransition, setRetainInstance, setReturnTransition, setSharedElementEnterTransition, setSharedElementReturnTransition, setTargetFragment, setUserVisibleHint, shouldShowRequestPermissionRationale, startActivity, startActivityForResult, startIntentSenderForResult, startPostponedEnterTransition, toString, unregisterForContextMenu
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.cheetahdigital.uikit.widget.list.EndlessListView
onFinishLoadMore, onLoadMoreFailed
-
Methods inherited from interface com.cheetahdigital.uikit.architecture.lce.LceView
onLoadFailed, onLoadSuccess, setErrorViewClickListener
-
Methods inherited from interface com.cheetahdigital.uikit.architecture.lce.MvpLceView
showContent, showError, showLoading
-
-
-
-
Field Detail
-
RESPONSE_PARAMETERS
public static final java.lang.String RESPONSE_PARAMETERS
- See Also:
- Constant Field Values
-
mListener
protected ChallengeResponsesClickListener mListener
-
-
Method Detail
-
getContentLayoutId
protected int getContentLayoutId()
Description copied from class:com.cheetahdigital.uikit.architecture.mvp.MvpFragmentView
Provide the Content Layout ID which is of a Layout Resource Reference of Android- Specified by:
getContentLayoutId
in classcom.cheetahdigital.uikit.architecture.mvp.MvpFragmentView<V extends ChallengeResponsesListView,P extends ChallengeResponsesListPresenter<V>>
- Returns:
- id of the content layout
-
onViewCreated
public void onViewCreated(android.view.View view, android.os.Bundle savedInstanceState)
- Overrides:
onViewCreated
in classcom.cheetahdigital.uikit.architecture.lce.LceFragmentView<V extends ChallengeResponsesListView,P extends ChallengeResponsesListPresenter<V>>
-
createPresenter
protected P createPresenter()
Description copied from class:com.cheetahdigital.uikit.architecture.mvp.MvpFragmentView
InstantiateMvpFragmentView.mPresenter
to be used for thisMvpActivityView
- Specified by:
createPresenter
in classcom.cheetahdigital.uikit.architecture.mvp.MvpFragmentView<V extends ChallengeResponsesListView,P extends ChallengeResponsesListPresenter<V>>
- Returns:
- return the
MvpBasePresenter
-
appendChallengeResponsesList
public void appendChallengeResponsesList(java.util.List<ChallengeResponse> responses, int totalEntries)
Description copied from interface:ChallengeResponsesListView
Notifies the view when GET challenge responses API with pagination is successful- Specified by:
appendChallengeResponsesList
in interfaceChallengeResponsesListView
- Parameters:
responses
- list ofChallengeResponse
totalEntries
- number of responses
-
showErrorMessage
public void showErrorMessage(java.lang.String error)
Description copied from interface:ChallengeResponsesListView
Notifies the view when GET challenge responses API failed- Specified by:
showErrorMessage
in interfaceChallengeResponsesListView
- Parameters:
error
- error message
-
createChallengeResponsesAdapter
protected ChallengeResponsesAdapter createChallengeResponsesAdapter(java.util.List<ChallengeResponse> challengeResponses, ChallengeResponsesClickListener listener)
Create an instance ofChallengesAdapter
. Usually used ifChallengeResponsesAdapter
was subclassed.- Parameters:
challengeResponses
- list ofChallengeResponse
listener
- handles challenge response click- Returns:
- instance of
ChallengeResponsesAdapter
-
captureSharedElementValues
protected void captureSharedElementValues(android.content.Intent intent)
Description copied from class:com.cheetahdigital.uikit.architecture.mvp.MvpFragmentView
Captures the shared element and passes its values to intent.- Overrides:
captureSharedElementValues
in classcom.cheetahdigital.uikit.architecture.mvp.MvpFragmentView<V extends ChallengeResponsesListView,P extends ChallengeResponsesListPresenter<V>>
- Parameters:
intent
-Intent
to store the shared element values
-
showChallengeResponsesList
public void showChallengeResponsesList(java.util.List<ChallengeResponse> responses, int totalEntries)
Description copied from interface:ChallengeResponsesListView
Notifies the view when GET challenge responses API is successful- Specified by:
showChallengeResponsesList
in interfaceChallengeResponsesListView
- Parameters:
responses
- list ofChallengeResponse
totalEntries
- number of responses
-
getScreenName
public int getScreenName()
- Specified by:
getScreenName
in interfacecom.cheetahdigital.corekit.sdk.analytics.AnalyticsManager.AnalyticsScreen
- Overrides:
getScreenName
in classcom.cheetahdigital.uikit.architecture.mvp.MvpFragmentView<V extends ChallengeResponsesListView,P extends ChallengeResponsesListPresenter<V>>
-
-