Package com.cheetahdigital.friends.ui
Class FriendsFragment<V extends FriendsView,P extends FriendsPresenter<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.friends.ui.FriendsFragment<V,P>
-
- 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
,FriendsView
,LceView
,MvpLceView
,MvpView
,RefreshableView
,ListView
public class FriendsFragment<V extends FriendsView,P extends FriendsPresenter<V>> extends RefreshableFragmentView<V,P> implements FriendsView, AnalyticsManager.AnalyticsScreen
The fragment class for showing the list ofFriend
Can receive the following intent extras:IntentKey.PRIMARY_PARAMS
- theFriendsParams
to useIntentKey.PRIMARY_ID
- contains the leaderboard name
-
-
Field Summary
-
Fields inherited from class com.cheetahdigital.uikit.architecture.refreshable.RefreshableFragmentView
mSwipeRefreshLayout
-
Fields inherited from class com.cheetahdigital.uikit.architecture.lce.LceFragmentView
mContentView, mErrorView, mInitialLoad, mLoadingView
-
-
Constructor Summary
Constructors Constructor Description FriendsFragment()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected FriendsAdapter
createFriendsAdapter()
Create an instance ofFriendsAdapter
.protected VerticalSpaceItemDecoration
createItemDecoration()
Create theVerticalSpaceItemDecoration
used in the RecyclerView.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()
protected void
initializeFacebookButton(com.facebook.login.widget.LoginButton fbLoginButton)
Initialize facebook loginvoid
logoutFacebook()
Logout the current user logged in from facebookvoid
onActivityResult(int requestCode, int resultCode, android.content.Intent data)
android.view.View
onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
void
showFacebookError(java.lang.String error)
Show a facebooke errorvoid
showFacebookLoginButton(boolean show)
Show/hide the facebook login buttonvoid
showFriendList(java.util.List<Friend> friendList)
Show the list ofFriend
-
Methods inherited from class com.cheetahdigital.uikit.architecture.refreshable.RefreshableFragmentView
onFinishRefresh, onRefresh, onRefreshFailed, reloadData, showContent, showError, showLoading, startRefresh
-
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, getPresenter, 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, 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.uikit.architecture.lce.LceView
onLoadFailed, onLoadSuccess, setErrorViewClickListener
-
Methods inherited from interface com.cheetahdigital.uikit.architecture.lce.MvpLceView
showContent, showError, showLoading
-
Methods inherited from interface com.cheetahdigital.uikit.architecture.refreshable.RefreshableView
onFinishRefresh, onRefreshFailed
-
-
-
-
Method Detail
-
getContentLayoutId
protected int getContentLayoutId()
Description copied from class:MvpFragmentView
Provide the Content Layout ID which is of a Layout Resource Reference of Android- Specified by:
getContentLayoutId
in classMvpFragmentView<V extends FriendsView,P extends FriendsPresenter<V>>
- Returns:
- id of the content layout
-
onCreateView
@Nullable public android.view.View onCreateView(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState)
- Overrides:
onCreateView
in classRefreshableFragmentView<V extends FriendsView,P extends FriendsPresenter<V>>
-
initializeFacebookButton
protected void initializeFacebookButton(com.facebook.login.widget.LoginButton fbLoginButton)
Initialize facebook login- Parameters:
fbLoginButton
-LoginButton
to initialize
-
createPresenter
protected P createPresenter()
Description copied from class:MvpFragmentView
InstantiateMvpFragmentView.mPresenter
to be used for thisMvpActivityView
- Specified by:
createPresenter
in classMvpFragmentView<V extends FriendsView,P extends FriendsPresenter<V>>
- Returns:
- return the
MvpBasePresenter
-
onActivityResult
public void onActivityResult(int requestCode, int resultCode, android.content.Intent data)
- Overrides:
onActivityResult
in classandroidx.fragment.app.Fragment
-
showFacebookError
public void showFacebookError(java.lang.String error)
Description copied from interface:FriendsView
Show a facebooke error- Specified by:
showFacebookError
in interfaceFriendsView
- Parameters:
error
- error message
-
showFriendList
public void showFriendList(java.util.List<Friend> friendList)
Description copied from interface:FriendsView
Show the list ofFriend
- Specified by:
showFriendList
in interfaceFriendsView
- Parameters:
friendList
- contains the list ofFriend
to use
-
showFacebookLoginButton
public void showFacebookLoginButton(boolean show)
Description copied from interface:FriendsView
Show/hide the facebook login button- Specified by:
showFacebookLoginButton
in interfaceFriendsView
- Parameters:
show
-true
to show, else false
-
logoutFacebook
public void logoutFacebook()
Description copied from interface:FriendsView
Logout the current user logged in from facebook- Specified by:
logoutFacebook
in interfaceFriendsView
-
getScreenName
public int getScreenName()
- Specified by:
getScreenName
in interfaceAnalyticsManager.AnalyticsScreen
- Overrides:
getScreenName
in classMvpFragmentView<V extends FriendsView,P extends FriendsPresenter<V>>
-
createItemDecoration
protected VerticalSpaceItemDecoration createItemDecoration()
Create theVerticalSpaceItemDecoration
used in the RecyclerView. This will be invoked when initializing the list for the first time.- Returns:
- instance of
VerticalSpaceItemDecoration
for the RecyclerView
-
createFriendsAdapter
protected FriendsAdapter createFriendsAdapter()
Create an instance ofFriendsAdapter
. Usually used ifFriendsAdapter
was subclassed.- Returns:
- instance of
FriendsAdapter
-
-