Most visited

Recently visited

Added in API level 19

Scene

public final class Scene
extends Object

java.lang.Object
   ↳ android.transition.Scene


场景表示应用场景时View层次结构中各种属性值的集合。 场景可以配置为在应用时自动运行转场,这将动态改变场景变化过程中发生的各种属性变化。

Summary

Public constructors

Scene(ViewGroup sceneRoot)

构造一个场景时不包含有关应用此场景时值将如何变化的信息。

Scene(ViewGroup sceneRoot, View layout)

构造一个场景,当它输入时,将从sceneRoot容器中移除所有子元素,并将该布局对象添加为该容器的新子元素。

Scene(ViewGroup sceneRoot, ViewGroup layout)

此构造函数在API级别21中已弃用。请使用Scene(ViewGroup, View)

Public methods

void enter()

输入这个场景,这需要改变这个场景指定的所有值。

void exit()

如果它是场景 scene root上的当前场景,则退出此场景。

static Scene getSceneForLayout(ViewGroup sceneRoot, int layoutId, Context context)

返回与给定的 layoutId参数关联的资源文件所描述的场景。

ViewGroup getSceneRoot()

获取场景的根,这是由此场景引起的更改所影响的视图层次结构的根部,并且在输入此场景时将对其进行动画处理。

void setEnterAction(Runnable action)

没有使用布局资源或层次结构定义的场景,或在这些层次结构更改后需要执行附加步骤的场景,应该设置一个输入操作以及可能的退出操作。

void setExitAction(Runnable action)

没有使用布局资源或层次结构定义的场景,或在这些层次结构更改后需要执行附加步骤的场景,应该设置一个输入操作以及可能的退出操作。

Inherited methods

From class java.lang.Object

Public constructors

Scene

Added in API level 19
Scene (ViewGroup sceneRoot)

构造一个场景时不包含有关应用此场景时值将如何变化的信息。 通过设置setEnterAction(Runnable)和可能的setExitAction(Runnable)来创建场景时,可能会使用此构造函数来动态配置。

Parameters
sceneRoot ViewGroup: The root of the hierarchy in which scene changes and transitions will take place.

Scene

Added in API level 21
Scene (ViewGroup sceneRoot, 
                View layout)

构造一个场景,当它输入时,将从sceneRoot容器中移除所有子元素,并将该布局对象添加为该容器的新子元素。

Parameters
sceneRoot ViewGroup: The root of the hierarchy in which scene changes and transitions will take place.
layout View: The view hierarchy of this scene, added as a child of sceneRoot when this scene is entered.

Scene

Added in API level 19
Scene (ViewGroup sceneRoot, 
                ViewGroup layout)

此构造函数在API级别21中已弃用。
使用Scene(ViewGroup, View)

Parameters
sceneRoot ViewGroup
layout ViewGroup

Public methods

enter

Added in API level 19
void enter ()

输入这个场景,这需要改变这个场景指定的所有值。 这些值可以是与布局视图组或布局资源文件相关联的值,现在将其添加到场景根目录中,或者可以通过setEnterAction(Runnable)输入操作}或其组合来更改值。 场景输入时不会执行转换。 要获取场景更改中的转换行为,请改为使用TransitionManager中的TransitionManager方法。

exit

Added in API level 19
void exit ()

如果是场景scene root上的当前场景,则退出此场景。 当前场景设置为entering一个场景。 如果有场景,则退出场景运行exit action

getSceneForLayout

Added in API level 19
Scene getSceneForLayout (ViewGroup sceneRoot, 
                int layoutId, 
                Context context)

返回与给定的layoutId参数关联的资源文件所描述的场景。 如果已经为给定的sceneRoot创建了这样的场景,则将返回相同的场景。 这种基于layoutId场景的缓存功能可以在代码中创建的场景和TransitionManager XML资源文件引用的场景之间共享公共场景。

Parameters
sceneRoot ViewGroup: The root of the hierarchy in which scene changes and transitions will take place.
layoutId int: The id of a standard layout resource file.
context Context: The context used in the process of inflating the layout resource.
Returns
Scene The scene for the given root and layout id

getSceneRoot

Added in API level 19
ViewGroup getSceneRoot ()

获取场景的根,这是由此场景引起的更改所影响的视图层次结构的根部,并且在输入此场景时将对其进行动画处理。

Returns
ViewGroup The root of the view hierarchy affected by this scene.

setEnterAction

Added in API level 19
void setEnterAction (Runnable action)

没有使用布局资源或层次结构定义的场景,或在这些层次结构更改后需要执行附加步骤的场景,应该设置一个输入操作以及可能的退出操作。 输入操作将导致Scene回调到应用程序代码中,以便在转换捕获预更改值并应用了任何其他场景更改(例如将视图添加到视图中)后执行应用程序所需的任何操作层次结构。 在这个方法被调用之后,将会播放过渡。

Parameters
action Runnable: The runnable whose run() method will be called when this scene is entered

也可以看看:

setExitAction

Added in API level 19
void setExitAction (Runnable action)

没有使用布局资源或层次结构定义的场景,或在这些层次结构更改后需要执行附加步骤的场景,应该设置一个输入操作以及可能的退出操作。 退出操作将导致Scene回调到应用程序代码中,以便在适用的转换捕获预更改值之后,但在应用任何其他场景更改(如新布局(如果有))之前执行应用程序需要执行的任何操作添加到视图层次结构中。 调用此方法后,将输入下一个场景,如果设置了输入操作,则会调用setEnterAction(Runnable)

Parameters
action Runnable

也可以看看:

Hooray!