belongs to Maven artifact com.android.support:leanback-v17:28.0.0-alpha1
GuidedStepSupportFragment
public
class
GuidedStepSupportFragment
extends Fragment
java.lang.Object | ||
↳ | android.support.v4.app.Fragment | |
↳ | android.support.v17.leanback.app.GuidedStepSupportFragment |
A GuidedStepSupportFragment is used to guide the user through a decision or series of decisions. It is composed of a guidance view on the left and a view on the right containing a list of possible actions.
Basic Usage
Clients of GuidedStepSupportFragment must create a custom subclass to attach to their Activities. This custom subclass provides the information necessary to construct the user interface and respond to user actions. At a minimum, subclasses should override:
onCreateGuidance(Bundle)
, to provide instructions to the useronCreateActions(List
, to provide a set of, Bundle) GuidedAction
s the user can takeonGuidedActionClicked(GuidedAction)
, to respond to those actions
Clients use following helper functions to add GuidedStepSupportFragment to Activity or FragmentManager:
addAsRoot(FragmentActivity, GuidedStepSupportFragment, int)
, to be called during Activity onCreate, adds GuidedStepSupportFragment as the first Fragment in activity.add(FragmentManager, GuidedStepSupportFragment)
oradd(FragmentManager, GuidedStepSupportFragment, int)
, to add GuidedStepSupportFragment on top of existing Fragments or replacing existing GuidedStepSupportFragment when moving forward to next step.finishGuidedStepSupportFragments()
can either finish the activity or pop all GuidedStepSupportFragment from stack.- If app chooses not to use the helper function, it is the app's responsibility to call
setUiStyle(int)
to select fragment transition and remember the stack entry where it need pops to.
Theming and Stylists
GuidedStepSupportFragment delegates its visual styling to classes called stylists. The GuidanceStylist
is responsible for the left guidance view, while the GuidedActionsStylist
is responsible for the right actions view. The stylists use theme
attributes to derive values associated with the presentation, such as colors, animations, etc.
Most simple visual aspects of GuidanceStylist and GuidedActionsStylist can be customized
via theming; see their documentation for more information.
GuidedStepSupportFragments must have access to an appropriate theme in order for the stylists to
function properly. Specifically, the fragment must receive Theme_Leanback_GuidedStep
, or a theme whose parent is
is set to that theme. Themes can be provided in one of three ways:
- The simplest way is to set the theme for the host Activity to the GuidedStep theme or a theme that derives from it.
- If the Activity already has a theme and setting its parent theme is inconvenient, the
existing Activity theme can have an entry added for the attribute
LeanbackGuidedStepTheme_guidedStepTheme
. If present, this theme will be used by GuidedStepSupportFragment as an overlay to the Activity's theme. - Finally, custom subclasses of GuidedStepSupportFragment may provide a theme through the
onProvideTheme()
method. This can be useful if a subclass is used across multiple Activities.
If the theme is provided in multiple ways, the onProvideTheme override has priority, followed by the Activity's theme. (Themes whose parent theme is already set to the guided step theme do not need to set the guidedStepTheme attribute; if set, it will be ignored.)
If themes do not provide enough customizability, the stylists themselves may be subclassed and
provided to the GuidedStepSupportFragment through the onCreateGuidanceStylist()
and onCreateActionsStylist()
methods. The stylists have simple hooks so that subclasses
may override layout files; subclasses may also have more complex logic to determine styling.
Guided sequences
GuidedStepSupportFragments can be grouped together to provide a guided sequence. GuidedStepSupportFragments
grouped as a sequence use custom animations provided by GuidanceStylist
and
GuidedActionsStylist
(or subclasses) during transitions between steps. Clients
should use add(FragmentManager, GuidedStepSupportFragment)
to place subsequent GuidedFragments onto the fragment stack so that
custom animations are properly configured. (Custom animations are triggered automatically when
the fragment stack is subsequently popped by any normal mechanism.)
Note: Currently GuidedStepSupportFragments grouped in this way must all be defined programmatically, rather than in XML. This restriction may be removed in the future.
Summary
XML attributes | |
---|---|
LeanbackGuidedStepTheme_guidedActionContentWidthWeight |
|
LeanbackGuidedStepTheme_guidedActionContentWidthWeightTwoPanels |
|
LeanbackGuidedStepTheme_guidedActionsBackground |
|
LeanbackGuidedStepTheme_guidedActionsBackgroundDark |
|
LeanbackGuidedStepTheme_guidedActionsElevation |
|
LeanbackGuidedStepTheme_guidedStepBackground |
|
LeanbackGuidedStepTheme_guidedStepTheme |
Constants | |
---|---|
String |
EXTRA_UI_STYLE
Fragment argument name for UI style. |
int |
UI_STYLE_ACTIVITY_ROOT
One possible value of argument |
int |
UI_STYLE_DEFAULT
This constant was deprecated
in API level 24.1.0.
Same value as |
int |
UI_STYLE_ENTRANCE
Default value for argument |
int |
UI_STYLE_REPLACE
This is the case that we use GuidedStepSupportFragment to replace another existing GuidedStepSupportFragment when moving forward to next step. |
Public constructors | |
---|---|
GuidedStepSupportFragment()
|
Public methods | |
---|---|
static
int
|
add(FragmentManager fragmentManager, GuidedStepSupportFragment fragment, int id)
Adds the specified GuidedStepSupportFragment to the fragment stack, replacing any existing GuidedStepSupportFragments in the stack, and configuring the fragment-to-fragment custom transitions. |
static
int
|
add(FragmentManager fragmentManager, GuidedStepSupportFragment fragment)
Adds the specified GuidedStepSupportFragment to the fragment stack, replacing any existing GuidedStepSupportFragments in the stack, and configuring the fragment-to-fragment custom transitions. |
static
int
|
addAsRoot(FragmentActivity activity, GuidedStepSupportFragment fragment, int id)
Adds the specified GuidedStepSupportFragment as content of Activity; no backstack entry is added so the activity will be dismissed when BACK key is pressed. |
void
|
collapseAction(boolean withTransition)
Collapse action which either has a sub actions list or action with
|
void
|
collapseSubActions()
Collapse sub actions list. |
void
|
expandAction(GuidedAction action, boolean withTransition)
Expand a given action with sub actions list or
|
void
|
expandSubActions(GuidedAction action)
Expand a given action's sub actions list. |
GuidedAction
|
findActionById(long id)
Find GuidedAction by Id. |
int
|
findActionPositionById(long id)
Find GuidedAction position in array by Id. |
GuidedAction
|
findButtonActionById(long id)
Find button GuidedAction by Id. |
int
|
findButtonActionPositionById(long id)
Find button GuidedAction position in array by Id. |
void
|
finishGuidedStepSupportFragments()
Convenient method to close GuidedStepSupportFragments on top of other content or finish Activity if GuidedStepSupportFragments were started in a separate activity. |
View
|
getActionItemView(int position)
Returns the view corresponding to the action at the indicated position in the list of actions for this fragment. |
List<GuidedAction>
|
getActions()
Returns the list of GuidedActions that the user may take in this fragment. |
View
|
getButtonActionItemView(int position)
Returns the view corresponding to the button action at the indicated position in the list of actions for this fragment. |
List<GuidedAction>
|
getButtonActions()
Returns the list of button GuidedActions that the user may take in this fragment. |
static
GuidedStepSupportFragment
|
getCurrentGuidedStepSupportFragment(FragmentManager fm)
Returns the current GuidedStepSupportFragment on the fragment transaction stack. |
GuidanceStylist
|
getGuidanceStylist()
Returns the GuidanceStylist that displays guidance information for the user. |
GuidedActionsStylist
|
getGuidedActionsStylist()
Returns the GuidedActionsStylist that displays the actions the user may take. |
GuidedActionsStylist
|
getGuidedButtonActionsStylist()
Returns the GuidedActionsStylist that displays the button actions the user may take. |
int
|
getSelectedActionPosition()
Returns the position if the currently selected GuidedAction. |
int
|
getSelectedButtonActionPosition()
Returns the position if the currently selected button GuidedAction. |
int
|
getUiStyle()
Read UI style from fragment arguments. |
boolean
|
isExpanded()
|
boolean
|
isFocusOutEndAllowed()
Returns true if allows focus out of end edge of GuidedStepSupportFragment, false otherwise. |
boolean
|
isFocusOutStartAllowed()
Returns true if allows focus out of start edge of GuidedStepSupportFragment, false otherwise. |
boolean
|
isSubActionsExpanded()
|
void
|
notifyActionChanged(int position)
Notify an action has changed and update its UI. |
void
|
notifyButtonActionChanged(int position)
Notify an button action has changed and update its UI. |
void
|
onCreate(Bundle savedInstanceState)
Called to do initial creation of a fragment. |
void
|
onCreateActions(List<GuidedAction> actions, Bundle savedInstanceState)
Fills out the set of actions available to the user. |
GuidedActionsStylist
|
onCreateActionsStylist()
Creates the presenter used to style the guided actions panel. |
View
|
onCreateBackgroundView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
Called by onCreateView to inflate background view. |
void
|
onCreateButtonActions(List<GuidedAction> actions, Bundle savedInstanceState)
Fills out the set of actions shown at right available to the user. |
GuidedActionsStylist
|
onCreateButtonActionsStylist()
Creates the presenter used to style a sided actions panel for button only. |
GuidanceStylist.Guidance
|
onCreateGuidance(Bundle savedInstanceState)
Returns the information required to provide guidance to the user. |
GuidanceStylist
|
onCreateGuidanceStylist()
Creates the presenter used to style the guidance panel. |
View
|
onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
Called to have the fragment instantiate its user interface view. |
void
|
onDestroyView()
Called when the view previously created by |
void
|
onGuidedActionClicked(GuidedAction action)
Callback invoked when an action is taken by the user. |
void
|
onGuidedActionEditCanceled(GuidedAction action)
Callback invoked when an action has been canceled editing, for example when user closes IME window by BACK key. |
void
|
onGuidedActionEdited(GuidedAction action)
This method was deprecated
in API level 24.1.0.
Override |
long
|
onGuidedActionEditedAndProceed(GuidedAction action)
Callback invoked when an action has been edited, for example when user clicks confirm button in IME window. |
void
|
onGuidedActionFocused(GuidedAction action)
Callback invoked when an action is focused (made to be the current selection) by the user. |
int
|
onProvideTheme()
Returns the theme used for styling the fragment. |
void
|
onResume()
Called when the fragment is visible to the user and actively running. |
void
|
onSaveInstanceState(Bundle outState)
Called to ask the fragment to save its current dynamic state, so it can later be reconstructed in a new instance of its process is restarted. |
boolean
|
onSubGuidedActionClicked(GuidedAction action)
Callback invoked when an action in sub actions is taken by the user. |
void
|
openInEditMode(GuidedAction action)
Opens the provided action in edit mode and raises ime. |
void
|
popBackStackToGuidedStepSupportFragment(Class guidedStepFragmentClass, int flags)
Convenient method to pop to fragment with Given class. |
void
|
setActions(List<GuidedAction> actions)
Sets the list of GuidedActions that the user may take in this fragment. |
void
|
setActionsDiffCallback(DiffCallback<GuidedAction> diffCallback)
Sets the RecyclerView DiffCallback used when |
void
|
setButtonActions(List<GuidedAction> actions)
Sets the list of button GuidedActions that the user may take in this fragment. |
void
|
setSelectedActionPosition(int position)
Scrolls the action list to the position indicated, selecting that action's view. |
void
|
setSelectedButtonActionPosition(int position)
Scrolls the action list to the position indicated, selecting that button action's view. |
void
|
setUiStyle(int style)
Set UI style to fragment arguments. |
Protected methods | |
---|---|
void
|
onAddSharedElementTransition(FragmentTransaction ft, GuidedStepSupportFragment disappearing)
Called when this fragment is added to FragmentTransaction with |
void
|
onProvideFragmentTransitions()
Called by Constructor to provide fragment transitions. |
Inherited methods | |
---|---|
From
class
android.support.v4.app.Fragment
| |
From
class
java.lang.Object
| |
From
interface
android.content.ComponentCallbacks
| |
From
interface
android.view.View.OnCreateContextMenuListener
| |
From
interface
android.arch.lifecycle.LifecycleOwner
| |
From
interface
android.arch.lifecycle.ViewModelStoreOwner
|
XML attributes
LeanbackGuidedStepTheme_guidedActionContentWidthWeight
LeanbackGuidedStepTheme_guidedActionContentWidthWeightTwoPanels
LeanbackGuidedStepTheme_guidedActionsBackground
LeanbackGuidedStepTheme_guidedActionsBackgroundDark
LeanbackGuidedStepTheme_guidedActionsElevation
LeanbackGuidedStepTheme_guidedStepBackground
LeanbackGuidedStepTheme_guidedStepTheme
Constants
EXTRA_UI_STYLE
String EXTRA_UI_STYLE
Fragment argument name for UI style. The argument value is persisted in fragment state and
used to select fragment transition. The value is initially UI_STYLE_ENTRANCE
and
might be changed in one of the three helper functions:
addAsRoot(FragmentActivity, GuidedStepSupportFragment, int)
sets toUI_STYLE_ACTIVITY_ROOT
add(FragmentManager, GuidedStepSupportFragment)
oradd(FragmentManager, GuidedStepSupportFragment, int)
sets it toUI_STYLE_REPLACE
if there is already a GuidedStepSupportFragment on stack.finishGuidedStepSupportFragments()
changes current GuidedStepSupportFragment toUI_STYLE_ENTRANCE
for the non activity case. This is a special case that changes the transition settings after fragment has been created, in order to force current GuidedStepSupportFragment run a return transition ofUI_STYLE_ENTRANCE
Argument value can be either:
Constant Value: "uiStyle"
UI_STYLE_ACTIVITY_ROOT
int UI_STYLE_ACTIVITY_ROOT
One possible value of argument EXTRA_UI_STYLE
. This is the case that we show first
GuidedStepSupportFragment in a separate activity. The default behavior of this style:
- Enter transition is assigned null (will rely on activity transition), exit transition is
same as
UI_STYLE_ENTRANCE
. Note: Changing exit transition by UI style is not working because fragment transition asks for exit transition before UI style is restored in Fragment.onCreate().
Constant Value: 2 (0x00000002)
UI_STYLE_DEFAULT
int UI_STYLE_DEFAULT
This constant was deprecated
in API level 24.1.0.
Same value as UI_STYLE_REPLACE
.
Constant Value: 0 (0x00000000)
UI_STYLE_ENTRANCE
int UI_STYLE_ENTRANCE
Default value for argument EXTRA_UI_STYLE
. The default value is assigned in
GuidedStepSupportFragment constructor. This is the case that we show GuidedStepSupportFragment on top of
other content. The default behavior of this style:
- Enter transition slides in from two sides, exit transition slide out to START(left). Background will be faded in. Note: Changing exit transition by UI style is not working because fragment transition asks for exit transition before UI style is restored in Fragment .onCreate().
finishGuidedStepSupportFragments()
also changes
the top GuidedStepSupportFragment to UI_STYLE_ENTRANCE in order to run the return transition
(reverse of enter transition) of UI_STYLE_ENTRANCE.
Constant Value: 1 (0x00000001)
UI_STYLE_REPLACE
int UI_STYLE_REPLACE
This is the case that we use GuidedStepSupportFragment to replace another existing GuidedStepSupportFragment when moving forward to next step. Default behavior of this style is:
- Enter transition slides in from END(right), exit transition same as
UI_STYLE_ENTRANCE
.
Constant Value: 0 (0x00000000)
Public constructors
Public methods
add
int add (FragmentManager fragmentManager, GuidedStepSupportFragment fragment, int id)
Adds the specified GuidedStepSupportFragment to the fragment stack, replacing any existing GuidedStepSupportFragments in the stack, and configuring the fragment-to-fragment custom transitions. A backstack entry is added, so the fragment will be dismissed when BACK key is pressed.
UI_STYLE_REPLACE
and
onAddSharedElementTransition(FragmentTransaction, GuidedStepSupportFragment)
will be called
to perform shared element transition between GuidedStepSupportFragments.
UI_STYLE_ENTRANCE
Note: currently fragments added using this method must be created programmatically rather than via XML.
Parameters | |
---|---|
fragmentManager |
FragmentManager : The FragmentManager to be used in the transaction. |
fragment |
GuidedStepSupportFragment : The GuidedStepSupportFragment to be inserted into the fragment stack. |
id |
int : The id of container to add GuidedStepSupportFragment, can be android.R.id.content. |
Returns | |
---|---|
int |
The ID returned by the call FragmentTransaction.commit. |
add
int add (FragmentManager fragmentManager, GuidedStepSupportFragment fragment)
Adds the specified GuidedStepSupportFragment to the fragment stack, replacing any existing GuidedStepSupportFragments in the stack, and configuring the fragment-to-fragment custom transitions. A backstack entry is added, so the fragment will be dismissed when BACK key is pressed.
UI_STYLE_REPLACE
UI_STYLE_ENTRANCE
Note: currently fragments added using this method must be created programmatically rather than via XML.
Parameters | |
---|---|
fragmentManager |
FragmentManager : The FragmentManager to be used in the transaction. |
fragment |
GuidedStepSupportFragment : The GuidedStepSupportFragment to be inserted into the fragment stack. |
Returns | |
---|---|
int |
The ID returned by the call FragmentTransaction.commit. |
addAsRoot
int addAsRoot (FragmentActivity activity, GuidedStepSupportFragment fragment, int id)
Adds the specified GuidedStepSupportFragment as content of Activity; no backstack entry is added so
the activity will be dismissed when BACK key is pressed. The method is typically called in
Activity.onCreate() when savedInstanceState is null. When savedInstanceState is not null,
the Activity is being restored, do not call addAsRoot() to duplicate the Fragment restored
by FragmentManager.
UI_STYLE_ACTIVITY_ROOT
is assigned.
Note: currently fragments added using this method must be created programmatically rather
than via XML.
Parameters | |
---|---|
activity |
FragmentActivity : The Activity to be used to insert GuidedstepFragment. |
fragment |
GuidedStepSupportFragment : The GuidedStepSupportFragment to be inserted into the fragment stack. |
id |
int : The id of container to add GuidedStepSupportFragment, can be android.R.id.content. |
Returns | |
---|---|
int |
The ID returned by the call FragmentTransaction.commit, or -1 there is already GuidedStepSupportFragment. |
collapseAction
void collapseAction (boolean withTransition)
Collapse action which either has a sub actions list or action with
hasEditableActivatorView()
is true.
Parameters | |
---|---|
withTransition |
boolean : True to run transition animation, false otherwise.
|
collapseSubActions
void collapseSubActions ()
Collapse sub actions list.
See also:
expandAction
void expandAction (GuidedAction action, boolean withTransition)
Expand a given action with sub actions list or
hasEditableActivatorView()
is true. The method must be called after
onCreateView(LayoutInflater, ViewGroup, Bundle)
creates fragment view.
Parameters | |
---|---|
action |
GuidedAction : GuidedAction to expand. |
withTransition |
boolean : True to run transition animation, false otherwise.
|
expandSubActions
void expandSubActions (GuidedAction action)
Expand a given action's sub actions list.
Parameters | |
---|---|
action |
GuidedAction : GuidedAction to expand. |
See also:
findActionById
GuidedAction findActionById (long id)
Find GuidedAction by Id.
Parameters | |
---|---|
id |
long : Id of the action to search. |
Returns | |
---|---|
GuidedAction |
GuidedAction object or null if not found. |
findActionPositionById
int findActionPositionById (long id)
Find GuidedAction position in array by Id.
Parameters | |
---|---|
id |
long : Id of the action to search. |
Returns | |
---|---|
int |
position of GuidedAction object in array or -1 if not found. |
findButtonActionById
GuidedAction findButtonActionById (long id)
Find button GuidedAction by Id.
Parameters | |
---|---|
id |
long : Id of the button action to search. |
Returns | |
---|---|
GuidedAction |
GuidedAction object or null if not found. |
findButtonActionPositionById
int findButtonActionPositionById (long id)
Find button GuidedAction position in array by Id.
Parameters | |
---|---|
id |
long : Id of the button action to search. |
Returns | |
---|---|
int |
position of GuidedAction object in array or -1 if not found. |
finishGuidedStepSupportFragments
void finishGuidedStepSupportFragments ()
Convenient method to close GuidedStepSupportFragments on top of other content or finish Activity if
GuidedStepSupportFragments were started in a separate activity. Pops all stack entries including
UI_STYLE_ENTRANCE
; if UI_STYLE_ENTRANCE
is not found, finish the activity.
Note that this method must be paired with add(FragmentManager, GuidedStepSupportFragment, int)
which sets up the stack entry name for finding which fragment we need to pop back to.
getActionItemView
View getActionItemView (int position)
Returns the view corresponding to the action at the indicated position in the list of actions for this fragment.
Parameters | |
---|---|
position |
int : The integer position of the action of interest. |
Returns | |
---|---|
View |
The View corresponding to the action at the indicated position, or null if that action is not currently onscreen. |
getActions
List<GuidedAction> getActions ()
Returns the list of GuidedActions that the user may take in this fragment.
Returns | |
---|---|
List<GuidedAction> |
The list of GuidedActions for this fragment. |
getButtonActionItemView
View getButtonActionItemView (int position)
Returns the view corresponding to the button action at the indicated position in the list of actions for this fragment.
Parameters | |
---|---|
position |
int : The integer position of the button action of interest. |
Returns | |
---|---|
View |
The View corresponding to the button action at the indicated position, or null if that action is not currently onscreen. |
getButtonActions
List<GuidedAction> getButtonActions ()
Returns the list of button GuidedActions that the user may take in this fragment.
Returns | |
---|---|
List<GuidedAction> |
The list of button GuidedActions for this fragment. |
getCurrentGuidedStepSupportFragment
GuidedStepSupportFragment getCurrentGuidedStepSupportFragment (FragmentManager fm)
Returns the current GuidedStepSupportFragment on the fragment transaction stack.
Parameters | |
---|---|
fm |
FragmentManager |
Returns | |
---|---|
GuidedStepSupportFragment |
The current GuidedStepSupportFragment, if any, on the fragment transaction stack. |
getGuidanceStylist
GuidanceStylist getGuidanceStylist ()
Returns the GuidanceStylist that displays guidance information for the user.
Returns | |
---|---|
GuidanceStylist |
The GuidanceStylist for this fragment. |
getGuidedActionsStylist
GuidedActionsStylist getGuidedActionsStylist ()
Returns the GuidedActionsStylist that displays the actions the user may take.
Returns | |
---|---|
GuidedActionsStylist |
The GuidedActionsStylist for this fragment. |
getGuidedButtonActionsStylist
GuidedActionsStylist getGuidedButtonActionsStylist ()
Returns the GuidedActionsStylist that displays the button actions the user may take.
Returns | |
---|---|
GuidedActionsStylist |
The GuidedActionsStylist for this fragment. |
getSelectedActionPosition
int getSelectedActionPosition ()
Returns the position if the currently selected GuidedAction.
Returns | |
---|---|
int |
position The integer position of the currently selected action. |
getSelectedButtonActionPosition
int getSelectedButtonActionPosition ()
Returns the position if the currently selected button GuidedAction.
Returns | |
---|---|
int |
position The integer position of the currently selected button action. |
getUiStyle
int getUiStyle ()
Read UI style from fragment arguments. Default value is UI_STYLE_ENTRANCE
when
fragment is first initialized. UI style is used to choose different fragment transition
animations and determine if this is the first GuidedStepSupportFragment on backstack.
Returns | |
---|---|
int |
UI_STYLE_ACTIVITY_ROOT UI_STYLE_REPLACE or
UI_STYLE_ENTRANCE . |
See also:
isExpanded
boolean isExpanded ()
Returns | |
---|---|
boolean |
True if is current expanded including subactions list or
action with hasEditableActivatorView() is true.
|
isFocusOutEndAllowed
boolean isFocusOutEndAllowed ()
Returns true if allows focus out of end edge of GuidedStepSupportFragment, false otherwise. Default value is false, the reason is to disable FocusFinder to find focusable views beneath content of GuidedStepSupportFragment. Subclass may override.
Returns | |
---|---|
boolean |
True if allows focus out of end edge of GuidedStepSupportFragment. |
isFocusOutStartAllowed
boolean isFocusOutStartAllowed ()
Returns true if allows focus out of start edge of GuidedStepSupportFragment, false otherwise. Default value is false, the reason is to disable FocusFinder to find focusable views beneath content of GuidedStepSupportFragment. Subclass may override.
Returns | |
---|---|
boolean |
True if allows focus out of start edge of GuidedStepSupportFragment. |
isSubActionsExpanded
boolean isSubActionsExpanded ()
Returns | |
---|---|
boolean |
True if the sub actions list is expanded, false otherwise. |
notifyActionChanged
void notifyActionChanged (int position)
Notify an action has changed and update its UI.
Parameters | |
---|---|
position |
int : Position of the GuidedAction in array.
|
notifyButtonActionChanged
void notifyButtonActionChanged (int position)
Notify an button action has changed and update its UI.
Parameters | |
---|---|
position |
int : Position of the button GuidedAction in array.
|
onCreate
void onCreate (Bundle savedInstanceState)
Called to do initial creation of a fragment. This is called after
onAttach(Activity)
and before
onCreateView(LayoutInflater, ViewGroup, Bundle)
.
Note that this can be called while the fragment's activity is
still in the process of being created. As such, you can not rely
on things like the activity's content view hierarchy being initialized
at this point. If you want to do work once the activity itself is
created, see onActivityCreated(Bundle)
.
Any restored child fragments will be created before the base
Fragment.onCreate
method returns.
Parameters | |
---|---|
savedInstanceState |
Bundle : If the fragment is being re-created from
a previous saved state, this is the state.
|
onCreateActions
void onCreateActions (List<GuidedAction> actions, Bundle savedInstanceState)
Fills out the set of actions available to the user. This hook is called during onCreate(Bundle)
. The default leaves the list of actions empty; subclasses should override.
Parameters | |
---|---|
actions |
List : A non-null, empty list ready to be populated. |
savedInstanceState |
Bundle : The saved instance state from onCreate.
|
onCreateActionsStylist
GuidedActionsStylist onCreateActionsStylist ()
Creates the presenter used to style the guided actions panel. The default implementation returns a basic GuidedActionsStylist.
Returns | |
---|---|
GuidedActionsStylist |
The GuidedActionsStylist used in this fragment. |
onCreateBackgroundView
View onCreateBackgroundView (LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
Called by onCreateView to inflate background view. Default implementation loads view
from lb_guidedstep_background
which holds a reference to
guidedStepBackground.
Parameters | |
---|---|
inflater |
LayoutInflater : LayoutInflater to load background view. |
container |
ViewGroup : Parent view of background view. |
Returns | |
---|---|
View |
Created background view or null if no background. |
onCreateButtonActions
void onCreateButtonActions (List<GuidedAction> actions, Bundle savedInstanceState)
Fills out the set of actions shown at right available to the user. This hook is called during
onCreate(Bundle)
. The default leaves the list of actions empty; subclasses may override.
Parameters | |
---|---|
actions |
List : A non-null, empty list ready to be populated. |
savedInstanceState |
Bundle : The saved instance state from onCreate.
|
onCreateButtonActionsStylist
GuidedActionsStylist onCreateButtonActionsStylist ()
Creates the presenter used to style a sided actions panel for button only. The default implementation returns a basic GuidedActionsStylist.
Returns | |
---|---|
GuidedActionsStylist |
The GuidedActionsStylist used in this fragment. |
onCreateGuidance
GuidanceStylist.Guidance onCreateGuidance (Bundle savedInstanceState)
Returns the information required to provide guidance to the user. This hook is called during
onCreateView(LayoutInflater, ViewGroup, Bundle)
. May be overridden to return a custom subclass of GuidanceStylist.Guidance
for use in a subclass of GuidanceStylist
. The default
returns a Guidance object with empty fields; subclasses should override.
Parameters | |
---|---|
savedInstanceState |
Bundle : The saved instance state from onCreateView. |
Returns | |
---|---|
GuidanceStylist.Guidance |
The Guidance object representing the information used to guide the user. |
onCreateGuidanceStylist
GuidanceStylist onCreateGuidanceStylist ()
Creates the presenter used to style the guidance panel. The default implementation returns a basic GuidanceStylist.
Returns | |
---|---|
GuidanceStylist |
The GuidanceStylist used in this fragment. |
onCreateView
View onCreateView (LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
Called to have the fragment instantiate its user interface view.
This is optional, and non-graphical fragments can return null (which
is the default implementation). This will be called between
onCreate(Bundle)
and onActivityCreated(Bundle)
.
If you return a View from here, you will later be called in
onDestroyView()
when the view is being released.
Parameters | |
---|---|
inflater |
LayoutInflater : The LayoutInflater object that can be used to inflate
any views in the fragment, |
container |
ViewGroup : If non-null, this is the parent view that the fragment's
UI should be attached to. The fragment should not add the view itself,
but this can be used to generate the LayoutParams of the view. |
savedInstanceState |
Bundle : If non-null, this fragment is being re-constructed
from a previous saved state as given here. |
Returns | |
---|---|
View |
Return the View for the fragment's UI, or null. |
onDestroyView
void onDestroyView ()
Called when the view previously created by onCreateView(LayoutInflater, ViewGroup, Bundle)
has
been detached from the fragment. The next time the fragment needs
to be displayed, a new view will be created. This is called
after onStop()
and before onDestroy()
. It is called
regardless of whether onCreateView(LayoutInflater, ViewGroup, Bundle)
returned a
non-null view. Internally it is called after the view's state has
been saved but before it has been removed from its parent.
onGuidedActionClicked
void onGuidedActionClicked (GuidedAction action)
Callback invoked when an action is taken by the user. Subclasses should override in order to act on the user's decisions.
Parameters | |
---|---|
action |
GuidedAction : The chosen action.
|
onGuidedActionEditCanceled
void onGuidedActionEditCanceled (GuidedAction action)
Callback invoked when an action has been canceled editing, for example when user closes
IME window by BACK key. Default implementation calls deprecated method
onGuidedActionEdited(GuidedAction)
.
Parameters | |
---|---|
action |
GuidedAction : The action which has been canceled editing.
|
onGuidedActionEdited
void onGuidedActionEdited (GuidedAction action)
This method was deprecated
in API level 24.1.0.
Override onGuidedActionEditedAndProceed(GuidedAction)
and/or
onGuidedActionEditCanceled(GuidedAction)
.
Callback invoked when an action's title or description has been edited, this happens either when user clicks confirm button in IME or user closes IME window by BACK key.
Parameters | |
---|---|
action |
GuidedAction |
onGuidedActionEditedAndProceed
long onGuidedActionEditedAndProceed (GuidedAction action)
Callback invoked when an action has been edited, for example when user clicks confirm button
in IME window. Default implementation calls deprecated method
onGuidedActionEdited(GuidedAction)
and returns ACTION_ID_NEXT
.
Parameters | |
---|---|
action |
GuidedAction : The action that has been edited. |
Returns | |
---|---|
long |
ID of the action will be focused or ACTION_ID_NEXT ,
ACTION_ID_CURRENT .
|
onGuidedActionFocused
void onGuidedActionFocused (GuidedAction action)
Callback invoked when an action is focused (made to be the current selection) by the user.
Parameters | |
---|---|
action |
GuidedAction |
onProvideTheme
int onProvideTheme ()
Returns the theme used for styling the fragment. The default returns -1, indicating that the host Activity's theme should be used.
Returns | |
---|---|
int |
The theme resource ID of the theme to use in this fragment, or -1 to use the host Activity's theme. |
onResume
void onResume ()
Called when the fragment is visible to the user and actively running.
This is generally
tied to Activity.onResume
of the containing
Activity's lifecycle.
onSaveInstanceState
void onSaveInstanceState (Bundle outState)
Called to ask the fragment to save its current dynamic state, so it
can later be reconstructed in a new instance of its process is
restarted. If a new instance of the fragment later needs to be
created, the data you place in the Bundle here will be available
in the Bundle given to onCreate(Bundle)
,
onCreateView(LayoutInflater, ViewGroup, Bundle)
, and
onActivityCreated(Bundle)
.
This corresponds to Activity.onSaveInstanceState(Bundle)
and most of the discussion there
applies here as well. Note however: this method may be called
at any time before onDestroy()
. There are many situations
where a fragment may be mostly torn down (such as when placed on the
back stack with no UI showing), but its state will not be saved until
its owning activity actually needs to save its state.
Parameters | |
---|---|
outState |
Bundle : Bundle in which to place your saved state.
|
onSubGuidedActionClicked
boolean onSubGuidedActionClicked (GuidedAction action)
Callback invoked when an action in sub actions is taken by the user. Subclasses should override in order to act on the user's decisions. Default return value is true to close the sub actions list.
Parameters | |
---|---|
action |
GuidedAction : The chosen action. |
Returns | |
---|---|
boolean |
true to collapse the sub actions list, false to keep it expanded. |
openInEditMode
void openInEditMode (GuidedAction action)
Opens the provided action in edit mode and raises ime. This can be
used to programmatically skip the extra click required to go into edit mode. This method
can be invoked in onCreateView(LayoutInflater, ViewGroup, Bundle)
.
Parameters | |
---|---|
action |
GuidedAction |
popBackStackToGuidedStepSupportFragment
void popBackStackToGuidedStepSupportFragment (Class guidedStepFragmentClass, int flags)
Convenient method to pop to fragment with Given class.
Parameters | |
---|---|
guidedStepFragmentClass |
Class : Name of the Class of GuidedStepSupportFragment to pop to. |
flags |
int : Either 0 or POP_BACK_STACK_INCLUSIVE .
|
setActions
void setActions (List<GuidedAction> actions)
Sets the list of GuidedActions that the user may take in this fragment.
Uses DiffCallback set by setActionsDiffCallback(DiffCallback)
.
Parameters | |
---|---|
actions |
List : The list of GuidedActions for this fragment.
|
setActionsDiffCallback
void setActionsDiffCallback (DiffCallback<GuidedAction> diffCallback)
Sets the RecyclerView DiffCallback used when setActions(List)
is called. By default
GuidedStepSupportFragment uses
GuidedActionDiffCallback
.
Sets it to null if app wants to refresh the whole list.
Parameters | |
---|---|
diffCallback |
DiffCallback : DiffCallback used in setActions(List) .
|
setButtonActions
void setButtonActions (List<GuidedAction> actions)
Sets the list of button GuidedActions that the user may take in this fragment.
Parameters | |
---|---|
actions |
List : The list of button GuidedActions for this fragment.
|
setSelectedActionPosition
void setSelectedActionPosition (int position)
Scrolls the action list to the position indicated, selecting that action's view.
Parameters | |
---|---|
position |
int : The integer position of the action of interest.
|
setSelectedButtonActionPosition
void setSelectedButtonActionPosition (int position)
Scrolls the action list to the position indicated, selecting that button action's view.
Parameters | |
---|---|
position |
int : The integer position of the button action of interest.
|
setUiStyle
void setUiStyle (int style)
Set UI style to fragment arguments. Default value is UI_STYLE_ENTRANCE
when fragment
is first initialized. UI style is used to choose different fragment transition animations and
determine if this is the first GuidedStepSupportFragment on backstack. In most cases app does not
directly call this method, app calls helper function
add(FragmentManager, GuidedStepSupportFragment, int)
. However if the app creates Fragment
transaction and controls backstack by itself, it would need call setUiStyle() to select the
fragment transition to use.
Parameters | |
---|---|
style |
int : UI_STYLE_ACTIVITY_ROOT UI_STYLE_REPLACE or
UI_STYLE_ENTRANCE .
|
Protected methods
onAddSharedElementTransition
void onAddSharedElementTransition (FragmentTransaction ft, GuidedStepSupportFragment disappearing)
Called when this fragment is added to FragmentTransaction with UI_STYLE_REPLACE
(aka
when the GuidedStepSupportFragment replacing an existing GuidedStepSupportFragment). Default implementation
establishes connections between action background views to morph action background bounds
change from disappearing GuidedStepSupportFragment into this GuidedStepSupportFragment. The default
implementation heavily relies on GuidedActionsStylist
's layout, app may override this
method when modifying the default layout of GuidedActionsStylist
.
Parameters | |
---|---|
ft |
FragmentTransaction : The FragmentTransaction to add shared element. |
disappearing |
GuidedStepSupportFragment : The disappearing fragment.
|
onProvideFragmentTransitions
void onProvideFragmentTransitions ()
Called by Constructor to provide fragment transitions. The default implementation assigns
transitions based on getUiStyle()
:
-
UI_STYLE_REPLACE
Slide from/to end(right) for enter transition, slide from/to start(left) for exit transition, shared element enter transition is set to ChangeBounds. -
UI_STYLE_ENTRANCE
Enter transition is set to slide from both sides, exit transition is same asUI_STYLE_REPLACE
, no shared element enter transition. -
UI_STYLE_ACTIVITY_ROOT
Enter transition is set to null and app should rely on activity transition, exit transition is same asUI_STYLE_REPLACE
, no shared element enter transition.
The default implementation heavily relies on GuidedActionsStylist
and
GuidanceStylist
layout, app may override this method when modifying the default
layout of GuidedActionsStylist
or GuidanceStylist
.
TIP: because the fragment view is removed during fragment transition, in general app cannot use two Visibility transition together. Workaround is to create your own Visibility transition that controls multiple animators (e.g. slide and fade animation in one Transition class).
Interfaces
- BrowseFragment.FragmentHost
- BrowseFragment.MainFragmentAdapterProvider
- BrowseFragment.MainFragmentRowsAdapterProvider
- BrowseSupportFragment.FragmentHost
- BrowseSupportFragment.MainFragmentAdapterProvider
- BrowseSupportFragment.MainFragmentRowsAdapterProvider
- HeadersFragment.OnHeaderClickedListener
- HeadersFragment.OnHeaderViewSelectedListener
- HeadersSupportFragment.OnHeaderClickedListener
- HeadersSupportFragment.OnHeaderViewSelectedListener
- SearchFragment.SearchResultProvider
- SearchSupportFragment.SearchResultProvider
Classes
- BackgroundManager
- BaseFragment
- BaseSupportFragment
- BrandedFragment
- BrandedSupportFragment
- BrowseFragment
- BrowseFragment.BrowseTransitionListener
- BrowseFragment.FragmentFactory
- BrowseFragment.ListRowFragmentFactory
- BrowseFragment.MainFragmentAdapter
- BrowseFragment.MainFragmentAdapterRegistry
- BrowseFragment.MainFragmentRowsAdapter
- BrowseSupportFragment
- BrowseSupportFragment.BrowseTransitionListener
- BrowseSupportFragment.FragmentFactory
- BrowseSupportFragment.ListRowFragmentFactory
- BrowseSupportFragment.MainFragmentAdapter
- BrowseSupportFragment.MainFragmentAdapterRegistry
- BrowseSupportFragment.MainFragmentRowsAdapter
- DetailsFragment
- DetailsFragmentBackgroundController
- DetailsSupportFragment
- DetailsSupportFragmentBackgroundController
- ErrorFragment
- ErrorSupportFragment
- GuidedStepFragment
- GuidedStepSupportFragment
- HeadersFragment
- HeadersSupportFragment
- OnboardingFragment
- OnboardingSupportFragment
- PlaybackFragment
- PlaybackFragmentGlueHost
- PlaybackSupportFragment
- PlaybackSupportFragmentGlueHost
- ProgressBarManager
- RowsFragment
- RowsFragment.MainFragmentAdapter
- RowsFragment.MainFragmentRowsAdapter
- RowsSupportFragment
- RowsSupportFragment.MainFragmentAdapter
- RowsSupportFragment.MainFragmentRowsAdapter
- SearchFragment
- SearchSupportFragment
- VerticalGridFragment
- VerticalGridSupportFragment
- VideoFragment
- VideoFragmentGlueHost
- VideoSupportFragment
- VideoSupportFragmentGlueHost
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2024-04-11 UTC.