Class RefreshableFragmentView<V extends RefreshableView,P extends RefreshablePresenter<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>
-
- Type Parameters:
V
- the Refreshable ViewP
- the Refreshable Presenter
- All Implemented Interfaces:
android.content.ComponentCallbacks
,android.view.View.OnCreateContextMenuListener
,androidx.lifecycle.LifecycleOwner
,androidx.lifecycle.ViewModelStoreOwner
,androidx.savedstate.SavedStateRegistryOwner
,androidx.swiperefreshlayout.widget.SwipeRefreshLayout.OnRefreshListener
,AnalyticsManager.AnalyticsScreen
,LceView
,MvpLceView
,MvpView
,RefreshableView
- Direct Known Subclasses:
EventDateListFragment
,FriendsFragment
,GiftcardsPagerFragment
,ListFragmentView
,MemberDetailFragment
,OffersCarouselFragment
,ProfileViewAndEditFragment
public abstract class RefreshableFragmentView<V extends RefreshableView,P extends RefreshablePresenter<V>> extends LceFragmentView<V,P> implements androidx.swiperefreshlayout.widget.SwipeRefreshLayout.OnRefreshListener, RefreshableView
The
Requires the following IDs in your Layout XML:Fragment
counterpart forRefreshableActivityView
. BaseMvpFragmentView
which supports Refreshing viaSwipeRefreshLayout
, together with the Loading-Content-Error pattern.- loading_view - the
View
to show when loading data - content_view - the
View
after the data loaded successfully - error_view - the
View
to show when there was an error loading the data - swipe_refresh_layout - the
SwipeRefreshLayout
which enables refreshing of data
-
-
Field Summary
Fields Modifier and Type Field Description protected androidx.swiperefreshlayout.widget.SwipeRefreshLayout
mSwipeRefreshLayout
-
Fields inherited from class com.cheetahdigital.uikit.architecture.lce.LceFragmentView
mContentView, mErrorView, mInitialLoad, mLoadingView
-
-
Constructor Summary
Constructors Constructor Description RefreshableFragmentView()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description android.view.View
onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
void
onFinishRefresh(boolean success)
void
onRefresh()
void
onRefreshFailed(java.lang.String error)
Notify user that refresh failedvoid
reloadData()
Public access to load datavoid
showContent()
Show content view, allow user to refresh view.void
showError()
Show error view, hide refresh layout.void
showLoading()
Show loading view, hide refresh layout.void
startRefresh()
Manually refresh the list and show the loading animation.-
Methods inherited from class com.cheetahdigital.uikit.architecture.lce.LceFragmentView
onLoadFailed, onLoadSuccess, onViewCreated, setErrorViewClickListener
-
Methods inherited from class com.cheetahdigital.uikit.architecture.mvp.MvpFragmentView
captureSharedElementValues, createPresenter, getContentLayoutId, getPresenter, getScreenName, getSharedElementViews, initSharedElementValues, isSharedAnimationEnabled, onAttach, onDestroyView, startActivity, startActivityForResult
-
Methods inherited from class androidx.fragment.app.Fragment
dump, equals, getActivity, getAllowEnterTransitionOverlap, getAllowReturnTransitionOverlap, getArguments, getChildFragmentManager, getContext, getEnterTransition, getExitTransition, getFragmentManager, getHost, getId, getLayoutInflater, getLayoutInflater, getLifecycle, getLoaderManager, getParentFragment, 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, 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.corekit.sdk.analytics.AnalyticsManager.AnalyticsScreen
getScreenName
-
Methods inherited from interface com.cheetahdigital.uikit.architecture.lce.LceView
onLoadFailed, onLoadSuccess, setErrorViewClickListener
-
-
-
-
Method Detail
-
onCreateView
@Nullable public android.view.View onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
- Overrides:
onCreateView
in classLceFragmentView<V extends RefreshableView,P extends RefreshablePresenter<V>>
-
startRefresh
public final void startRefresh()
Manually refresh the list and show the loading animation.
-
showLoading
public void showLoading()
Show loading view, hide refresh layout.- Specified by:
showLoading
in interfaceMvpLceView
- Overrides:
showLoading
in classLceFragmentView<V extends RefreshableView,P extends RefreshablePresenter<V>>
-
showContent
public void showContent()
Show content view, allow user to refresh view.- Specified by:
showContent
in interfaceMvpLceView
- Overrides:
showContent
in classLceFragmentView<V extends RefreshableView,P extends RefreshablePresenter<V>>
-
showError
public void showError()
Show error view, hide refresh layout.- Specified by:
showError
in interfaceMvpLceView
- Overrides:
showError
in classLceFragmentView<V extends RefreshableView,P extends RefreshablePresenter<V>>
-
onRefresh
public void onRefresh()
- Specified by:
onRefresh
in interfaceandroidx.swiperefreshlayout.widget.SwipeRefreshLayout.OnRefreshListener
-
reloadData
public final void reloadData()
Public access to load data
-
onFinishRefresh
public void onFinishRefresh(boolean success)
- Specified by:
onFinishRefresh
in interfaceRefreshableView
-
onRefreshFailed
public void onRefreshFailed(java.lang.String error)
Notify user that refresh failed- Specified by:
onRefreshFailed
in interfaceRefreshableView
- Parameters:
error
- short description on reason of failure
-
-