Class MvpFragmentView<V extends MvpView,P extends MvpNullObjectBasePresenter<V>>
- java.lang.Object
-
- androidx.fragment.app.Fragment
-
- com.cheetahdigital.uikit.architecture.mvp.MvpFragmentView<V,P>
-
- All Implemented Interfaces:
android.content.ComponentCallbacks
,android.view.View.OnCreateContextMenuListener
,androidx.lifecycle.LifecycleOwner
,androidx.lifecycle.ViewModelStoreOwner
,androidx.savedstate.SavedStateRegistryOwner
,AnalyticsManager.AnalyticsScreen
,MvpView
- Direct Known Subclasses:
AgeGateFragment
,ChallengeResponseFragment
,LceFragmentView
,ProductComponentFragment
,SubmitReceiptFragment
public abstract class MvpFragmentView<V extends MvpView,P extends MvpNullObjectBasePresenter<V>> extends androidx.fragment.app.Fragment implements MvpView, AnalyticsManager.AnalyticsScreen
AFragment
which implementsMvpView
. The class automatically handles attaching and detaching theMvpView
to itsMvpBasePresenter
following Android's Fragment Lifecycle.
-
-
Constructor Summary
Constructors Constructor Description MvpFragmentView()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
captureSharedElementValues(android.content.Intent intent)
Captures the shared element and passes its values to intent.protected abstract P
createPresenter()
InstantiatemPresenter
to be used for thisMvpActivityView
protected abstract int
getContentLayoutId()
Provide the Content Layout ID which is of a Layout Resource Reference of Androidprotected P
getPresenter()
Get theMvpBasePresenter
created fromcreatePresenter()
int
getScreenName()
protected android.view.View[]
getSharedElementViews()
Fetches the shared element views.protected void
initSharedElementValues(android.view.View view)
Initializes shared element values.protected boolean
isSharedAnimationEnabled()
void
onAttach(android.content.Context context)
android.view.View
onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
void
onDestroyView()
void
onViewCreated(android.view.View view, android.os.Bundle savedInstanceState)
void
startActivity(android.content.Intent intent)
void
startActivityForResult(android.content.Intent intent, int requestCode)
-
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
-
-
-
-
Method Detail
-
onCreateView
@Nullable public android.view.View onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
- Overrides:
onCreateView
in classandroidx.fragment.app.Fragment
-
onViewCreated
@CallSuper public void onViewCreated(android.view.View view, android.os.Bundle savedInstanceState)
- Overrides:
onViewCreated
in classandroidx.fragment.app.Fragment
-
onDestroyView
@CallSuper public void onDestroyView()
- Overrides:
onDestroyView
in classandroidx.fragment.app.Fragment
-
startActivity
public void startActivity(android.content.Intent intent)
- Overrides:
startActivity
in classandroidx.fragment.app.Fragment
-
onAttach
public void onAttach(@NonNull android.content.Context context)
- Overrides:
onAttach
in classandroidx.fragment.app.Fragment
-
isSharedAnimationEnabled
protected boolean isSharedAnimationEnabled()
-
startActivityForResult
public void startActivityForResult(android.content.Intent intent, int requestCode)
- Overrides:
startActivityForResult
in classandroidx.fragment.app.Fragment
-
captureSharedElementValues
protected void captureSharedElementValues(android.content.Intent intent)
Captures the shared element and passes its values to intent.- Parameters:
intent
-Intent
to store the shared element values
-
getSharedElementViews
protected android.view.View[] getSharedElementViews()
Fetches the shared element views.- Returns:
- list of shared element
View
-
initSharedElementValues
protected void initSharedElementValues(android.view.View view)
Initializes shared element values.- Parameters:
view
- the parent container for the shared elements
-
getContentLayoutId
@LayoutRes protected abstract int getContentLayoutId()
Provide the Content Layout ID which is of a Layout Resource Reference of Android- Returns:
- id of the content layout
-
createPresenter
protected abstract P createPresenter()
InstantiatemPresenter
to be used for thisMvpActivityView
- Returns:
- return the
MvpBasePresenter
-
getPresenter
protected P getPresenter()
Get theMvpBasePresenter
created fromcreatePresenter()
- Returns:
- return the
MvpBasePresenter
-
getScreenName
public int getScreenName()
- Specified by:
getScreenName
in interfaceAnalyticsManager.AnalyticsScreen
-
-