Most visited

Recently visited

GuidedStepFragment

public class GuidedStepFragment
extends Fragment

java.lang.Object
   ↳ android.app.Fragment
     ↳ android.support.v17.leanback.app.GuidedStepFragment


GuidedStepFragment用于指导用户完成一个决策或一系列决策。 它由左侧的指导视图和右侧的视图组成,其中包含可能的操作列表。

Basic Usage

GuidedStepFragment的客户端必须创建一个自定义子类以附加到他们的活动。 此自定义子类提供构建用户界面和响应用户操作所需的信息。 至少,子类应该覆盖:

客户使用以下帮助函数将GuidedStepFragment添加到Activity或FragmentManager:

Theming and Stylists

GuidedStepFragment将其视觉样式委托给称为设计师的类。 GuidanceStylist负责左侧指导视图,而GuidedActionsStylist负责正确操作视图。 造型师使用主题属性来派生与演示文稿相关的值,例如颜色,动画等.GuidanceStylist和GuidedActionsStylist的大多数简单视觉方面都可以通过主题进行自定义; 请参阅其文档以获取更多信息。

GuidedStepFragments必须能够访问适当的主题才能让设计师正常运作。 具体来说,该片段必须接收Theme_Leanback_GuidedStep ,或者其父级被设置为该主题的主题。 可以通过以下三种方式之一提供主题:

如果主题以多种方式提供,则onProvideTheme覆盖优先,然后是Activty的主题。 (父主题已经设置为引导步骤主题的主题不需要设置guidedStepTheme属性;如果设置,它将被忽略。)

如果主题没有提供足够的可定制性,那么设计师可以通过onCreateGuidanceStylist()onCreateActionsStylist()方法将其分类并提供给onCreateActionsStylist() 造型师有简单的挂钩,以便子类可以覆盖布局文件; 子类也可能有更复杂的逻辑来确定样式。

Guided sequences

GuidedStepFragments可以组合在一起以提供指导序列。 GuidedStepFragments按序列使用由GuidanceStylistGuidedActionsStylist (或子类)在步骤之间转换期间提供的自定义动画。 客户端应该使用add(FragmentManager, GuidedStepFragment)将后续GuidedFragments放置到片段堆栈上,以便自定义动画得到正确配置。 (当片段堆栈随后被任何正常机制弹出时,自动触发自定义动画。)

注意:目前以这种方式分组的GuidedStepFragments都必须以编程方式定义,而不是以XML格式定义。 将来可能会取消此限制。

也可以看看:

Summary

XML attributes

android.support.v17.leanback:guidedActionContentWidthWeight Theme attribute used for the weight of actions. 
android.support.v17.leanback:guidedActionContentWidthWeightTwoPanels Theme attribute used for the weight of actions when there are two panels. 
android.support.v17.leanback:guidedActionsBackground Theme attribute for the background of GuidedActions. 
android.support.v17.leanback:guidedActionsBackgroundDark Theme attribute for the dark version background of GuidedActions. 
android.support.v17.leanback:guidedActionsElevation Theme attribute for the shadow elevation of GuidedActions. 
android.support.v17.leanback:guidedStepBackground Theme attribute of background drawable used by GuidedStepFragment. 
android.support.v17.leanback:guidedStepTheme Theme attribute for the overall theme used in a GuidedStepFragment. 

Inherited XML attributes

From class android.app.Fragment

Constants

String EXTRA_UI_STYLE

用户界面样式的片段参数名称。

int UI_STYLE_ACTIVITY_ROOT

参数 EXTRA_UI_STYLE一个可能值。

int UI_STYLE_DEFAULT

这个常数已被弃用。 UI_STYLE_REPLACE相同的值。

int UI_STYLE_ENTRANCE

参数 EXTRA_UI_STYLE默认值。

int UI_STYLE_REPLACE

这是我们使用GuidedStepFragment替换另一个现有的GuidedStepFragment的情况,当前进到下一步时。

Inherited constants

From interface android.content.ComponentCallbacks2

Public constructors

GuidedStepFragment()

Public methods

static int add(FragmentManager fragmentManager, GuidedStepFragment fragment, int id)

将指定的GuidedStepFragment添加到片段堆栈,替换堆栈中的所有GuidedStepFragments,并配置片段到片段的自定义转场。

static int add(FragmentManager fragmentManager, GuidedStepFragment fragment)

将指定的GuidedStepFragment添加到片段堆栈,替换堆栈中的所有GuidedStepFragments,并配置片段到片段的自定义转场。

static int addAsRoot(Activity activity, GuidedStepFragment fragment, int id)

将指定的GuidedStepFragment添加为Activity的内容; 没有添加后台条目,因此当按下BACK键时,活动将被解除。

void collapseSubActions()

折叠子动作列表。

void expandSubActions(GuidedAction action)

展开给定动作的子动作列表。

GuidedAction findActionById(long id)

通过Id查找GuidedAction。

int findActionPositionById(long id)

按Id查找GuidedAction位置。

GuidedAction findButtonActionById(long id)

按Id查找按钮GuidedAction。

int findButtonActionPositionById(long id)

按Id查找按钮中的GuidedAction位置。

void finishGuidedStepFragments()

在其他内容之上关闭GuidedStepFragments或完成活动(如果GuidedStepFragments是在单独的活动中启动的)。

View getActionItemView(int position)

返回与此片段的动作列表中指定位置处的动作相对应的视图。

List<GuidedAction> getActions()

返回用户在此片段中可能采用的GuidedActions的列表。

View getButtonActionItemView(int position)

返回与此片段的动作列表中指定位置处的按钮动作对应的视图。

List<GuidedAction> getButtonActions()

返回用户在此片段中可能采用的按钮GuidedActions的列表。

static GuidedStepFragment getCurrentGuidedStepFragment(FragmentManager fm)

返回片段事务堆栈上的当前GuidedStepFragment。

GuidanceStylist getGuidanceStylist()

返回显示用户指导信息的GuidanceStylist。

GuidedActionsStylist getGuidedActionsStylist()

返回显示用户可以采取的操作的GuidedActionsStylist。

GuidedActionsStylist getGuidedButtonActionsStylist()

返回显示用户可能采取的按钮操作的GuidedActionsStylist。

int getSelectedActionPosition()

如果当前选择的GuidedAction返回位置。

int getSelectedButtonActionPosition()

如果当前选定的按钮GuidedAction返回位置。

int getUiStyle()

从片段参数中读取UI样式。

boolean isFocusOutEndAllowed()

如果允许焦点超出GuidedStepFragment的结束边缘,则返回true,否则返回false。

boolean isFocusOutStartAllowed()

如果允许焦点超出GuidedStepFragment的起始边缘,则返回true,否则返回false。

boolean isSubActionsExpanded()
void notifyActionChanged(int position)

通知某个操作已更改并更新其UI。

void notifyButtonActionChanged(int position)

通知按钮操作已更改并更新其UI。

void onCreate(Bundle savedInstanceState)

被调用来做一个片段的初始创建。

void onCreateActions(List<GuidedAction> actions, Bundle savedInstanceState)

填写用户可用的一组操作。

GuidedActionsStylist onCreateActionsStylist()

创建用于设置指导操作面板风格的演示者。

View onCreateBackgroundView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)

由onCreateView调用来膨胀背景视图。

void onCreateButtonActions(List<GuidedAction> actions, Bundle savedInstanceState)

填写用户可用的右侧所示的一组操作。

GuidedActionsStylist onCreateButtonActionsStylist()

创建用于仅为按钮设置双面动作面板的演示者。

GuidanceStylist.Guidance onCreateGuidance(Bundle savedInstanceState)

返回向用户提供指导所需的信息。

GuidanceStylist onCreateGuidanceStylist()

创建用于设置指导面板风格的演示者。

View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)

调用以使片段实例化其用户界面视图。

void onDestroyView()

当以前由 onCreateView(LayoutInflater, ViewGroup, Bundle)创建的视图已从片段中分离时调用。

void onGuidedActionClicked(GuidedAction action)

用户执行操作时调用的回调函数。

void onGuidedActionEditCanceled(GuidedAction action)

当某个操作已被取消编辑时,例如用户通过BACK键关闭IME窗口时调用的回调函数。

void onGuidedActionEdited(GuidedAction action)

此方法已弃用。 覆盖onGuidedActionEditedAndProceed(GuidedAction)和/或onGuidedActionEditCanceled(GuidedAction)

long onGuidedActionEditedAndProceed(GuidedAction action)

在编辑操作时调用回调,例如,当用户在IME窗口中单击确认按钮时。

void onGuidedActionFocused(GuidedAction action)

用户重点关注动作(作为当前选择)时调用的回调。

int onProvideTheme()

返回用于样式化片段的主题。

void onResume()

当片段对用户可见且正在积极运行时调用。

void onSaveInstanceState(Bundle outState)

打电话询问片段以保存其当前的动态状态,以便稍后可以在重新启动其进程的新实例时重新构建它。

boolean onSubGuidedActionClicked(GuidedAction action)

当用户采取子动作中的动作时调用回调。

void popBackStackToGuidedStepFragment(Class guidedStepFragmentClass, int flags)

方便的方法弹出到给定类的片段。

void setActions(List<GuidedAction> actions)

设置用户在这个片段中可以采用的GuidedActions的列表。

void setButtonActions(List<GuidedAction> actions)

设置用户可以在此片段中采用的按钮GuidedActions的列表。

void setSelectedActionPosition(int position)

将动作列表滚动到所指示的位置,选择该动作的视图。

void setSelectedButtonActionPosition(int position)

将动作列表滚动到指定位置,选择该按钮动作的视图。

void setUiStyle(int style)

将UI样式设置为片段参数。

Protected methods

void onAddSharedElementTransition(FragmentTransaction ft, GuidedStepFragment disappearing)

当这个片段被添加到FragmentTransaction中时 UI_STYLE_REPLACE (也就是当GuidedStepFragment替换现有的GuidedStepFragment时)。

void onProvideFragmentTransitions()

由构造函数调用以提供片段转换。

Inherited methods

From class android.app.Fragment
From class java.lang.Object
From interface android.content.ComponentCallbacks2
From interface android.view.View.OnCreateContextMenuListener
From interface android.content.ComponentCallbacks

XML attributes

android.support.v17.leanback:guidedActionContentWidthWeight

用于动作权重的主题属性。 默认是lb_guidedactions_width_weight

可能是另一种资源的引用,其形式为“ @[+][package:]type/name ”或形式为“一个主题属性 ?[package:]type/name ”。

android.support.v17.leanback:guidedActionContentWidthWeightTwoPanels

当有两个面板时用于动作权重的主题属性。 默认是lb_guidedactions_width_weight_two_panels

可能是另一种资源的引用,其形式为“ @[+][package:]type/name ”或形式为“一个主题属性 ?[package:]type/name ”。

android.support.v17.leanback:guidedActionsBackground

GuidedActions背景的主题属性。 默认是lb_guidedactions_background

可能是另一种资源的引用,其形式为“ @[+][package:]type/name ”或形式为“一个主题属性 ?[package:]type/name ”。

android.support.v17.leanback:guidedActionsBackgroundDark

GuidedActions的黑暗版本背景的主题属性。 默认是lb_guidedactions_background_dark

可能是另一种资源的引用,其形式为“ @[+][package:]type/name ”或形式为“一个主题属性 ?[package:]type/name ”。

android.support.v17.leanback:guidedActionsElevation

GuidedActions阴影标高的主题属性。 默认是lb_guidedactions_elevation

可能是另一种资源的引用,其形式为“ @[+][package:]type/name ”或形式为“一个主题属性 ?[package:]type/name ”。

可能是一个维度值,它是一个浮点数,后面跟着一个单位,例如“ 14.5sp ”。 可用单位为:px(像素),dp(密度独立像素),sp(基于首选字体大小的缩放像素),单位为英寸和毫米。

android.support.v17.leanback:guidedStepBackground

GuidedStepFragment使用的背景可绘制的主题属性。

可能是另一种资源的引用,其形式为“ @[+][package:]type/name ”或形式为“一个主题属性 ?[package:]type/name ”。

可以是“ #rgb ”,“ #argb ”,“ #rrggbb#aarrggbb ”形式的颜色值。

android.support.v17.leanback:guidedStepTheme

GuidedStepFragment中使用的整体主题的主题属性。 Leanback主题为此设置了默认值,但不是从leanback主题派生的自定义主题可以将其设置为@style/Theme.Leanback.GuidedStep以指定默认的GuidedStepFragment样式。

可能是另一种资源的引用,其形式为“ @[+][package:]type/name ”或形式为“一个主题属性 ?[package:]type/name ”。

Constants

EXTRA_UI_STYLE

String EXTRA_UI_STYLE

用户界面样式的片段参数名称。 参数值以片段状态持久化并用于选择片段转换。 该值最初为UI_STYLE_ENTRANCE ,可能会在三个辅助函数之一中进行更改:

参数值可以是:

常数值:“uiStyle”

UI_STYLE_ACTIVITY_ROOT

int UI_STYLE_ACTIVITY_ROOT

参数EXTRA_UI_STYLE一个可能值。 这是我们在单独的活动中显示第一个GuidedStepFragment的情况。 这种风格的默认行为:

  • 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().

常量值:2(0x00000002)

UI_STYLE_DEFAULT

int UI_STYLE_DEFAULT

这个常数已被弃用。
UI_STYLE_REPLACE值相同。

常量值:0(0x00000000)

UI_STYLE_ENTRANCE

int UI_STYLE_ENTRANCE

参数EXTRA_UI_STYLE默认值。 缺省值在GuidedStepFragment构造函数中分配。 这是我们在其他内容上显示GuidedStepFragment的情况。 这种风格的默认行为:

  • 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().
When popping multiple GuidedStepFragment, finishGuidedStepFragments() also changes the top GuidedStepFragment to UI_STYLE_ENTRANCE in order to run the return transition (reverse of enter transition) of UI_STYLE_ENTRANCE.

常数值:1(0x00000001)

UI_STYLE_REPLACE

int UI_STYLE_REPLACE

这是我们使用GuidedStepFragment替换另一个现有的GuidedStepFragment的情况,当前进到下一步时。 这种风格的默认行为是:

  • Enter transition slides in from END(right), exit transition same as UI_STYLE_ENTRANCE.

常量值:0(0x00000000)

Public constructors

GuidedStepFragment

GuidedStepFragment ()

Public methods

add

int add (FragmentManager fragmentManager, 
                GuidedStepFragment fragment, 
                int id)

将指定的GuidedStepFragment添加到片段堆栈,替换堆栈中的所有GuidedStepFragments,并配置片段到片段的自定义转场。 添加一个后台条目,所以当按下BACK键时,这个片段将被解散。

  • If current fragment on stack is GuidedStepFragment: assign UI_STYLE_REPLACE and onAddSharedElementTransition(FragmentTransaction, GuidedStepFragment) will be called to perform shared element transition between GuidedStepFragments.
  • If current fragment on stack is not GuidedStepFragment: assign UI_STYLE_ENTRANCE

    注意:当前使用此方法添加的片段必须以编程方式创建,而不是通过XML创建。

    Parameters
    fragmentManager FragmentManager: The FragmentManager to be used in the transaction.
    fragment GuidedStepFragment: The GuidedStepFragment to be inserted into the fragment stack.
    id int: The id of container to add GuidedStepFragment, can be android.R.id.content.
    Returns
    int The ID returned by the call FragmentTransaction.commit.
  • add

    int add (FragmentManager fragmentManager, 
                    GuidedStepFragment fragment)

    将指定的GuidedStepFragment添加到片段堆栈,替换堆栈中的所有GuidedStepFragments,并配置片段到片段的自定义转场。 添加一个后台条目,所以当按下BACK键时,这个片段将被解散。

  • If current fragment on stack is GuidedStepFragment: assign UI_STYLE_REPLACE
  • If current fragment on stack is not GuidedStepFragment: assign UI_STYLE_ENTRANCE

    注意:当前使用此方法添加的片段必须以编程方式创建,而不是通过XML创建。

    Parameters
    fragmentManager FragmentManager: The FragmentManager to be used in the transaction.
    fragment GuidedStepFragment: The GuidedStepFragment to be inserted into the fragment stack.
    Returns
    int The ID returned by the call FragmentTransaction.commit.
  • addAsRoot

    int addAsRoot (Activity activity, 
                    GuidedStepFragment fragment, 
                    int id)

    将指定的GuidedStepFragment添加为Activity的内容; 没有添加后台条目,因此当按下BACK键时,活动将被解除。 当savedInstanceState为空时,通常在Activity.onCreate()中调用该方法。 当savedInstanceState不为空时,活动正在恢复,不要调用addAsRoot()复制FragmentManager恢复的Fragment。 UI_STYLE_ACTIVITY_ROOT被分配。 注意:当前使用此方法添加的片段必须以编程方式创建,而不是通过XML创建。

    Parameters
    activity Activity: The Activity to be used to insert GuidedstepFragment.
    fragment GuidedStepFragment: The GuidedStepFragment to be inserted into the fragment stack.
    id int: The id of container to add GuidedStepFragment, can be android.R.id.content.
    Returns
    int The ID returned by the call FragmentTransaction.commit, or -1 there is already GuidedStepFragment.

    collapseSubActions

    void collapseSubActions ()

    折叠子动作列表。

    也可以看看:

    expandSubActions

    void expandSubActions (GuidedAction action)

    展开给定动作的子动作列表。

    Parameters
    action GuidedAction: GuidedAction to expand.

    也可以看看:

    findActionById

    GuidedAction findActionById (long id)

    通过Id查找GuidedAction。

    Parameters
    id long: Id of the action to search.
    Returns
    GuidedAction GuidedAction object or null if not found.

    findActionPositionById

    int findActionPositionById (long id)

    按Id查找GuidedAction位置。

    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)

    按Id查找按钮GuidedAction。

    Parameters
    id long: Id of the button action to search.
    Returns
    GuidedAction GuidedAction object or null if not found.

    findButtonActionPositionById

    int findButtonActionPositionById (long id)

    按Id查找按钮中的GuidedAction位置。

    Parameters
    id long: Id of the button action to search.
    Returns
    int position of GuidedAction object in array or -1 if not found.

    finishGuidedStepFragments

    void finishGuidedStepFragments ()

    在其他内容之上关闭GuidedStepFragments或完成活动(如果GuidedStepFragments是在单独的活动中启动的)。 UI_STYLE_ENTRANCE所有堆栈条目,包括UI_STYLE_ENTRANCE ; 如果未找到UI_STYLE_ENTRANCE ,则完成活动。 请注意,此方法必须与add(FragmentManager, GuidedStepFragment, int)配对,后者设置堆栈条目名称以查找我们需要弹出哪个片段。

    getActionItemView

    View getActionItemView (int position)

    返回与此片段的动作列表中指定位置处的动作相对应的视图。

    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 ()

    返回用户在此片段中可能采用的GuidedActions的列表。

    Returns
    List<GuidedAction> The list of GuidedActions for this fragment.

    getButtonActionItemView

    View getButtonActionItemView (int position)

    返回与此片段的动作列表中指定位置处的按钮动作对应的视图。

    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 ()

    返回用户在此片段中可能采用的按钮GuidedActions的列表。

    Returns
    List<GuidedAction> The list of button GuidedActions for this fragment.

    getCurrentGuidedStepFragment

    GuidedStepFragment getCurrentGuidedStepFragment (FragmentManager fm)

    返回片段事务堆栈上的当前GuidedStepFragment。

    Parameters
    fm FragmentManager
    Returns
    GuidedStepFragment The current GuidedStepFragment, if any, on the fragment transaction stack.

    getGuidanceStylist

    GuidanceStylist getGuidanceStylist ()

    返回显示用户指导信息的GuidanceStylist。

    Returns
    GuidanceStylist The GuidanceStylist for this fragment.

    getGuidedActionsStylist

    GuidedActionsStylist getGuidedActionsStylist ()

    返回显示用户可以采取的操作的GuidedActionsStylist。

    Returns
    GuidedActionsStylist The GuidedActionsStylist for this fragment.

    getGuidedButtonActionsStylist

    GuidedActionsStylist getGuidedButtonActionsStylist ()

    返回显示用户可能采取的按钮操作的GuidedActionsStylist。

    Returns
    GuidedActionsStylist The GuidedActionsStylist for this fragment.

    getSelectedActionPosition

    int getSelectedActionPosition ()

    如果当前选择的GuidedAction返回位置。

    Returns
    int position The integer position of the currently selected action.

    getSelectedButtonActionPosition

    int getSelectedButtonActionPosition ()

    如果当前选定的按钮GuidedAction返回位置。

    Returns
    int position The integer position of the currently selected button action.

    getUiStyle

    int getUiStyle ()

    从片段参数中读取UI样式。 当片段第一次初始化时,默认值是UI_STYLE_ENTRANCE 用户界面风格用于选择不同的片段过渡动画,并确定这是否是在堆栈上的第一个GuidedStepFragment。

    Returns
    int UI_STYLE_ACTIVITY_ROOT UI_STYLE_REPLACE or UI_STYLE_ENTRANCE.

    也可以看看:

    isFocusOutEndAllowed

    boolean isFocusOutEndAllowed ()

    如果允许焦点超出GuidedStepFragment的结束边缘,则返回true,否则返回false。 默认值为false,原因是禁用FocusFinder在GuidedStepFragment的内容下查找可聚焦视图。 子类可能会覆盖。

    Returns
    boolean True if allows focus out of end edge of GuidedStepFragment.

    isFocusOutStartAllowed

    boolean isFocusOutStartAllowed ()

    如果允许焦点超出GuidedStepFragment的起始边缘,则返回true,否则返回false。 默认值为false,原因是禁用FocusFinder在GuidedStepFragment的内容下查找可聚焦视图。 子类可能会覆盖。

    Returns
    boolean True if allows focus out of start edge of GuidedStepFragment.

    isSubActionsExpanded

    boolean isSubActionsExpanded ()

    Returns
    boolean True if the sub actions list is expanded, false otherwise.

    notifyActionChanged

    void notifyActionChanged (int position)

    通知某个操作已更改并更新其UI。

    Parameters
    position int: Position of the GuidedAction in array.

    notifyButtonActionChanged

    void notifyButtonActionChanged (int position)

    通知按钮操作已更改并更新其UI。

    Parameters
    position int: Position of the button GuidedAction in array.

    onCreate

    void onCreate (Bundle savedInstanceState)

    被调用来做一个片段的初始创建。 这是在onAttach(Activity)之后和onAttach(Activity)之前onCreateView(LayoutInflater, ViewGroup, Bundle) ,但如果片段实例在Activity重新创建期间保留(请参阅setRetainInstance(boolean) ),则不调用该实例。

    请注意,这可以在片段的活动仍处于创建过程中时调用。 因此,您不能依赖于此时正在初始化活动的内容视图层次结构。 如果您想在创建活动本身后进行工作,请参阅onActivityCreated(Bundle)

    如果您的应用targetSdkVersion为23或更低,则在onCreate返回后,将恢复从savedInstanceState恢复的子片段。 当瞄准N或更高版本并且在N或更新的平台版本上运行时,它们将被Fragment.onCreate恢复。

    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)

    填写用户可用的一组操作。 这个钩子在onCreate(Bundle)期间被调用。 默认情况下,动作列表为空; 子类应该重写。

    Parameters
    actions List: A non-null, empty list ready to be populated.
    savedInstanceState Bundle: The saved instance state from onCreate.

    onCreateActionsStylist

    GuidedActionsStylist onCreateActionsStylist ()

    创建用于设置指导操作面板风格的演示者。 默认实现返回一个基本的GuidedActionsStylist。

    Returns
    GuidedActionsStylist The GuidedActionsStylist used in this fragment.

    onCreateBackgroundView

    View onCreateBackgroundView (LayoutInflater inflater, 
                    ViewGroup container, 
                    Bundle savedInstanceState)

    由onCreateView调用来膨胀背景视图。 默认实现从lb_guidedstep_background加载视图,该视图保存对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)

    填写用户可用的右侧所示的一组操作。 这个钩子在onCreate(Bundle)期间被调用。 默认情况下,动作列表为空; 子类可能会覆盖。

    Parameters
    actions List: A non-null, empty list ready to be populated.
    savedInstanceState Bundle: The saved instance state from onCreate.

    onCreateButtonActionsStylist

    GuidedActionsStylist onCreateButtonActionsStylist ()

    创建用于仅为按钮设置双面动作面板的演示者。 默认实现返回一个基本的GuidedActionsStylist。

    Returns
    GuidedActionsStylist The GuidedActionsStylist used in this fragment.

    onCreateGuidance

    GuidanceStylist.Guidance onCreateGuidance (Bundle savedInstanceState)

    返回向用户提供指导所需的信息。 这个钩子在onCreateView(LayoutInflater, ViewGroup, Bundle)期间被调用。 可能会被改写返回的自定义子类GuidanceStylist.Guidance用在子类GuidanceStylist 默认返回带空字段的Guidance对象; 子类应该重写。

    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 ()

    创建用于设置指导面板风格的演示者。 默认实现返回一个基本的GuidanceStylist。

    Returns
    GuidanceStylist The GuidanceStylist used in this fragment.

    onCreateView

    View onCreateView (LayoutInflater inflater, 
                    ViewGroup container, 
                    Bundle savedInstanceState)

    调用以使片段实例化其用户界面视图。 这是可选的,非图形片段可以返回null(这是默认实现)。 这将在onCreate(Bundle)onActivityCreated(Bundle)之间onActivityCreated(Bundle)

    如果你从这里返回视图,那么当视图被释放时,你将在以后被调用 onDestroyView()

    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 ()

    当先前由onCreateView(LayoutInflater, ViewGroup, Bundle)创建的视图已从片段中分离时调用。 下次需要显示片段时,将创建一个新视图。 这是在onStop()之后和onDestroy()之前onDestroy() 无论它被称为onCreateView(LayoutInflater, ViewGroup, Bundle)返回一个非空的观点。 内部它在视图的状态被保存之后但在它的父对象被移除之前被调用。

    onGuidedActionClicked

    void onGuidedActionClicked (GuidedAction action)

    用户执行操作时调用的回调函数。 为了对用户的决定采取行动,子类应该被覆盖。

    Parameters
    action GuidedAction: The chosen action.

    onGuidedActionEditCanceled

    void onGuidedActionEditCanceled (GuidedAction action)

    当某个操作已被取消编辑时,例如用户通过BACK键关闭IME窗口时调用的回调函数。 默认实现调用已弃用的方法onGuidedActionEdited(GuidedAction)

    Parameters
    action GuidedAction: The action which has been canceled editing.

    onGuidedActionEdited

    void onGuidedActionEdited (GuidedAction action)

    此方法已弃用。
    覆盖onGuidedActionEditedAndProceed(GuidedAction)和/或onGuidedActionEditCanceled(GuidedAction)

    当一个动作的标题或描述已被编辑时调用回调,这发生在用户单击IME中的确认按钮或用户通过BACK键关闭IME窗口时发生。

    Parameters
    action GuidedAction

    onGuidedActionEditedAndProceed

    long onGuidedActionEditedAndProceed (GuidedAction action)

    在编辑操作时调用回调,例如,当用户在IME窗口中单击确认按钮时。 默认实现调用已弃用的方法onGuidedActionEdited(GuidedAction)并返回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)

    用户重点关注动作(作为当前选择)时调用的回调。

    Parameters
    action GuidedAction

    onProvideTheme

    int onProvideTheme ()

    返回用于样式化片段的主题。 默认返回-1,表示应该使用主机Activity的主题。

    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 ()

    当片段对用户可见且正在积极运行时调用。 这通常与包含Activity的生命周期的Activity.onResume相关联。

    onSaveInstanceState

    void onSaveInstanceState (Bundle outState)

    打电话询问片段以保存其当前的动态状态,以便稍后可以在重新启动其进程的新实例时重新构建它。 如果片段的新实例后需要创建,您的包放在这里的数据将提供给包可onCreate(Bundle)onCreateView(LayoutInflater, ViewGroup, Bundle) ,并onActivityCreated(Bundle)

    这相当于Activity.onSaveInstanceState(Bundle) ,这里的大多数讨论也适用于此。 但请注意: 此方法可能在onDestroy()之前onDestroy() 有很多情况下,碎片可能大部分被拆除(例如,当放置在背堆栈上而没有UI显示时),但是它的状态不会被保存直到其拥有的活动实际上需要保存其状态。

    Parameters
    outState Bundle: Bundle in which to place your saved state.

    onSubGuidedActionClicked

    boolean onSubGuidedActionClicked (GuidedAction action)

    当用户采取子动作中的动作时调用回调。 为了对用户的决定采取行动,子类应该被覆盖。 默认返回值为true以关闭子动作列表。

    Parameters
    action GuidedAction: The chosen action.
    Returns
    boolean true to collapse the sub actions list, false to keep it expanded.

    popBackStackToGuidedStepFragment

    void popBackStackToGuidedStepFragment (Class guidedStepFragmentClass, 
                    int flags)

    方便的方法弹出到给定类的片段。

    Parameters
    guidedStepFragmentClass Class: Name of the Class of GuidedStepFragment to pop to.
    flags int: Either 0 or POP_BACK_STACK_INCLUSIVE.

    setActions

    void setActions (List<GuidedAction> actions)

    设置用户在这个片段中可以采用的GuidedActions的列表。

    Parameters
    actions List: The list of GuidedActions for this fragment.

    setButtonActions

    void setButtonActions (List<GuidedAction> actions)

    设置用户可以在此片段中采用的按钮GuidedActions的列表。

    Parameters
    actions List: The list of button GuidedActions for this fragment.

    setSelectedActionPosition

    void setSelectedActionPosition (int position)

    将动作列表滚动到所指示的位置,选择该动作的视图。

    Parameters
    position int: The integer position of the action of interest.

    setSelectedButtonActionPosition

    void setSelectedButtonActionPosition (int position)

    将动作列表滚动到指定位置,选择该按钮动作的视图。

    Parameters
    position int: The integer position of the button action of interest.

    setUiStyle

    void setUiStyle (int style)

    将UI样式设置为片段参数。 当片段第一次初始化时,默认值是UI_STYLE_ENTRANCE 用户界面风格用于选择不同的片段过渡动画,并确定这是否是在堆栈上的第一个GuidedStepFragment。 在大多数情况下,应用程序不直接调用此方法,应用程序调用帮助函数add(FragmentManager, GuidedStepFragment, int) 但是,如果应用程序创建Fragment事务并自行控制后台堆栈,则需要调用setUiStyle()来选择要使用的片段转换。

    Parameters
    style int: UI_STYLE_ACTIVITY_ROOT UI_STYLE_REPLACE or UI_STYLE_ENTRANCE.

    Protected methods

    onAddSharedElementTransition

    void onAddSharedElementTransition (FragmentTransaction ft, 
                    GuidedStepFragment disappearing)

    当这个片段被添加到FragmentTransaction中时UI_STYLE_REPLACE (也就是当GuidedStepFragment替换现有的GuidedStepFragment时)。 默认实现在动作背景视图之间建立连接,以将动作背景界限从消失的GuidedStepFragment变为此GuidedStepFragment。 默认实现严重依赖于GuidedActionsStylist的布局,当修改默认布局GuidedActionsStylist时,应用可能会覆盖此方法。

    Parameters
    ft FragmentTransaction: The FragmentTransaction to add shared element.
    disappearing GuidedStepFragment: The disappearing fragment.

    也可以看看:

    onProvideFragmentTransitions

    void onProvideFragmentTransitions ()

    由构造函数调用以提供片段转换。 默认实现基于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 as UI_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 as UI_STYLE_REPLACE, no shared element enter transition.

    默认实现严重依赖于 GuidedActionsStylistGuidanceStylist布局,当修改默认布局 GuidedActionsStylistGuidanceStylist时,应用可能会覆盖此方法。

    提示:因为片段视图在片段转换过程中被删除,所以通常app不能同时使用两个可见性转换。 解决方法是创建控制多个动画制作者的自己的可见性转换(例如,在一个Transition类中滑动和淡入淡出动画)。

    Hooray!