public class TransitionManager
extends Object
java.lang.Object | |
↳ | android.transition.TransitionManager |
该课程管理Scene
更改时Scene
一组Scene
。 要使用管理器,请添加场景以及调用setTransition(Scene, Transition)
或setTransition(Scene, Scene, Transition)
过渡对象。 不需要为场景更改设置特定的转场; 默认情况下,场景更改将使用AutoTransition
在大多数情况下执行合理的操作。 只有当应用程序在这些情况下需要不同的转换行为时,才需要为特定场景更改指定其他转换。
可以在res/transition
目录内的XML资源文件中声明TransitionManagers。 TransitionManager资源由transitionManager
标签名称组成,其中包含一个或多个transition
标签,每个标签描述该标签中该过渡与从/到场景信息的关系。 例如,以下是一个声明多个场景转换的资源文件:
<transitionManager xmlns:android="http://schemas.android.com/apk/res/android"> <transition android:fromScene="@layout/transition_scene1" android:toScene="@layout/transition_scene2" android:transition="@transition/changebounds"/> <transition android:fromScene="@layout/transition_scene2" android:toScene="@layout/transition_scene1" android:transition="@transition/changebounds"/> <transition android:toScene="@layout/transition_scene3" android:transition="@transition/changebounds_fadein_together"/> <transition android:fromScene="@layout/transition_scene3" android:toScene="@layout/transition_scene1" android:transition="@transition/changebounds_fadeout_sequential"/> <transition android:fromScene="@layout/transition_scene3" android:toScene="@layout/transition_scene2" android:transition="@transition/changebounds_fadeout_sequential"/> </transitionManager>
对于每个fromScene
和toScene
属性,都有一个对标准XML布局文件的引用。 这相当于通过调用getSceneForLayout(ViewGroup, int, Context)
从代码布局创建场景。 对于transition
属性,在res/transition
目录中存在对资源文件的引用,该文件描述了该转换。
Transition
,
TransitionSet
,
TransitionTarget
,
Fade
, and
TransitionManager
.
Public constructors |
|
---|---|
TransitionManager() |
Public methods |
|
---|---|
static void |
beginDelayedTransition(ViewGroup sceneRoot, Transition transition) 便捷方法在调用此方法和下一个呈现框架之间根据给定场景根目录中的所有更改定义的新场景动画。 |
static void |
beginDelayedTransition(ViewGroup sceneRoot) 使用默认过渡对使用此方法和下一个呈现框架之间的所有更改定义的新场景进行动画处理的便捷方法。 |
static void |
endTransitions(ViewGroup sceneRoot) 结束指定场景根目录上的所有挂起和正在进行的转换。 |
static void |
go(Scene scene, Transition transition) 使用给定的转换简单地改变给定场景的便捷方法。 |
static void |
go(Scene scene) 使用TransitionManager的默认转换简单地切换到给定场景的便捷方法。 |
void |
setTransition(Scene scene, Transition transition) 设置输入给定场景时发生的特定转场。 |
void |
setTransition(Scene fromScene, Scene toScene, Transition transition) 设置退出/输入给定场景对时发生的特定转场。 |
void |
transitionTo(Scene scene) 切换到给定的场景,对此特定场景更改使用适当的过渡(如TransitionManager指定的那样,如果没有这种过渡存在,则使用默认过渡)。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
void beginDelayedTransition (ViewGroup sceneRoot, Transition transition)
便捷方法在调用此方法和下一个呈现框架之间根据给定场景根目录中的所有更改定义的新场景动画。 调用此方法将导致TransitionManager捕获场景根中的当前值,然后发布请求以在下一帧上运行转换。 那时,场景根目录中的新值将被捕获,并且变化将被动画化。 没有必要创建一个场景; 在转换开始时调用此方法和下一帧之间会发生变化。
在下一帧之前多次调用此方法(例如,如果不相关的代码也想进行动态更改并在同一场景根上运行转场),则只有第一次调用将触发捕捉值并退出当前场景。 随后在同一帧中调用具有相同场景根的方法将被忽略。
传递参数 null
将导致TransitionManager使用其默认转换。
Parameters | |
---|---|
sceneRoot |
ViewGroup : The root of the View hierarchy to run the transition on. |
transition |
Transition : The transition to use for this change. A value of null causes the TransitionManager to use the default transition. |
void beginDelayedTransition (ViewGroup sceneRoot)
使用默认过渡对使用此方法和下一个呈现框架之间的所有更改定义的新场景进行动画处理的便捷方法。 等效于调用beginDelayedTransition(ViewGroup, Transition)
具有的价值null
为transition
参数。
Parameters | |
---|---|
sceneRoot |
ViewGroup : The root of the View hierarchy to run the transition on. |
void endTransitions (ViewGroup sceneRoot)
结束指定场景根目录上的所有挂起和正在进行的转换。
Parameters | |
---|---|
sceneRoot |
ViewGroup : The root of the View hierarchy to end transitions on. |
void go (Scene scene, Transition transition)
使用给定的转换简单地改变给定场景的便捷方法。
在传递 null
过渡参数将导致现场没有任何过渡运行变化,相当于调用 exit()
现场根目前的现场,随后 enter()
由指定的现场 scene
参数。
Parameters | |
---|---|
scene |
Scene : The Scene to change to |
transition |
Transition : The transition to use for this scene change. A value of null causes the scene change to happen with no transition. |
void go (Scene scene)
使用TransitionManager的默认转换简单地切换到给定场景的便捷方法。
Parameters | |
---|---|
scene |
Scene : The Scene to change to |
void setTransition (Scene scene, Transition transition)
设置输入给定场景时发生的特定转场。
Parameters | |
---|---|
scene |
Scene : The scene which, when applied, will cause the given transition to run. |
transition |
Transition : The transition that will play when the given scene is entered. A value of null will result in the default behavior of using the default transition instead. |
void setTransition (Scene fromScene, Scene toScene, Transition transition)
设置退出/输入给定场景对时发生的特定转场。
Parameters | |
---|---|
fromScene |
Scene : The scene being exited when the given transition will be run |
toScene |
Scene : The scene being entered when the given transition will be run |
transition |
Transition : The transition that will play when the given scene is entered. A value of null will result in the default behavior of using the default transition instead. |
void transitionTo (Scene scene)
切换到给定的场景,对此特定场景更改使用适当的过渡(如TransitionManager指定的那样,如果没有这种过渡存在,则使用默认过渡)。
Parameters | |
---|---|
scene |
Scene : The Scene to change to |