Register now for Android Dev Summit 2019!

TransitionSet

open class TransitionSet : Transition
kotlin.Any
   ↳ androidx.transition.Transition
   ↳ androidx.transition.TransitionSet

A TransitionSet is a parent of child transitions (including other TransitionSets). Using TransitionSets enables more complex choreography of transitions, where some sets play ORDERING_TOGETHER and others play ORDERING_SEQUENTIAL. For example, AutoTransition uses a TransitionSet to sequentially play a Fade(Fade.OUT), followed by a ChangeBounds, followed by a Fade(Fade.OUT) transition.

A TransitionSet can be described in a resource file by using the tag transitionSet, along with the standard attributes of TransitionSet and Transition. Child transitions of the TransitionSet object can be loaded by adding those child tags inside the enclosing transitionSet tag. For example, the following xml describes a TransitionSet that plays a Fade and then a ChangeBounds transition on the affected view targets:

<transitionSet xmlns:android="http://schemas.android.com/apk/res/android"
              android:transitionOrdering="sequential">
          <fade/>
          <changeBounds/>
      </transitionSet>
  

Summary

Constants

static Int

A flag used to indicate that the child transitions of this set should play in sequence; when one child transition ends, the next child transition begins.

static Int

A flag used to indicate that the child transitions of this set should all start at the same time.

Inherited constants

Public constructors

Constructs an empty transition set.

<init>(context: Context!, attrs: AttributeSet!)

Public methods

open TransitionSet

open TransitionSet
addTarget(@NonNull target: View)

open TransitionSet
addTarget(@IdRes targetId: Int)

open TransitionSet
addTarget(@NonNull targetName: String)

open TransitionSet
addTarget(@NonNull targetType: Class<*>)

open TransitionSet
addTransition(@NonNull transition: Transition)

Adds child transition to this set.

open Unit
captureEndValues(@NonNull transitionValues: TransitionValues)

open Unit
captureStartValues(@NonNull transitionValues: TransitionValues)

open Transition

open Transition
excludeTarget(@NonNull target: View, exclude: Boolean)

open Transition
excludeTarget(@NonNull targetName: String, exclude: Boolean)

open Transition
excludeTarget(targetId: Int, exclude: Boolean)

open Transition
excludeTarget(@NonNull type: Class<*>, exclude: Boolean)

open Int

Returns the ordering of this TransitionSet.

open Transition?

Returns the child Transition at the specified position in the TransitionSet.

open Int

Returns the number of child transitions in the TransitionSet.

open TransitionSet

open TransitionSet
removeTarget(@IdRes targetId: Int)

open TransitionSet
removeTarget(@NonNull target: View)

open TransitionSet
removeTarget(@NonNull target: Class<*>)

open TransitionSet
removeTarget(@NonNull target: String)

open TransitionSet
removeTransition(@NonNull transition: Transition)

Removes the specified child transition from this set.

open TransitionSet
setDuration(duration: Long)

Setting a non-negative duration on a TransitionSet causes all of the child transitions (current and future) to inherit this duration.

open Unit

open TransitionSet
setInterpolator(@Nullable interpolator: TimeInterpolator?)

open TransitionSet
setOrdering(ordering: Int)

Sets the play order of this set's child transitions.

open Unit
setPathMotion(pathMotion: PathMotion?)

open Unit

open TransitionSet
setStartDelay(startDelay: Long)

Inherited functions

Constants

ORDERING_SEQUENTIAL

static val ORDERING_SEQUENTIAL: Int

A flag used to indicate that the child transitions of this set should play in sequence; when one child transition ends, the next child transition begins. Note that a transition does not end until all instances of it (which are playing on all applicable targets of the transition) end.

Value: 1

ORDERING_TOGETHER

static val ORDERING_TOGETHER: Int

A flag used to indicate that the child transitions of this set should all start at the same time.

Value: 0

Public constructors

<init>

TransitionSet()

Constructs an empty transition set. Add child transitions to the set by calling addTransition(Transition) )}. By default, child transitions will play together.

<init>

TransitionSet(context: Context!, attrs: AttributeSet!)

Public methods

addListener

@NonNull open fun addListener(@NonNull listener: Transition.TransitionListener): TransitionSet

addTarget

@NonNull open fun addTarget(@NonNull target: View): TransitionSet

addTarget

@NonNull open fun addTarget(@IdRes targetId: Int): TransitionSet

addTarget

@NonNull open fun addTarget(@NonNull targetName: String): TransitionSet

addTarget

@NonNull open fun addTarget(@NonNull targetType: Class<*>): TransitionSet

addTransition

@NonNull open fun addTransition(@NonNull transition: Transition): TransitionSet

Adds child transition to this set. The order in which this child transition is added relative to other child transitions that are added, in addition to the ordering property, determines the order in which the transitions are started.

If this transitionSet has a duration, interpolator, propagation delay, path motion, or epicenter callback set on it, the child transition will inherit the values that are set. Transitions are assumed to have a maximum of one transitionSet parent.

Parameters
transition Transition: A non-null child transition to be added to this set.
Return
TransitionSet: This transitionSet object.

captureEndValues

open fun captureEndValues(@NonNull transitionValues: TransitionValues): Unit

captureStartValues

open fun captureStartValues(@NonNull transitionValues: TransitionValues): Unit

clone

open fun clone(): Transition

excludeTarget

@NonNull open fun excludeTarget(@NonNull target: View, exclude: Boolean): Transition

excludeTarget

@NonNull open fun excludeTarget(@NonNull targetName: String, exclude: Boolean): Transition

excludeTarget

@NonNull open fun excludeTarget(targetId: Int, exclude: Boolean): Transition

excludeTarget

@NonNull open fun excludeTarget(@NonNull type: Class<*>, exclude: Boolean): Transition

getOrdering

open fun getOrdering(): Int

Returns the ordering of this TransitionSet. By default, the value is ORDERING_TOGETHER.

Return
Int: ORDERING_TOGETHER if child transitions will play at the same time, ORDERING_SEQUENTIAL if they will play in sequence.

getTransitionAt

@Nullable open fun getTransitionAt(index: Int): Transition?

Returns the child Transition at the specified position in the TransitionSet.

Parameters
index Int: The position of the Transition to retrieve.

getTransitionCount

open fun getTransitionCount(): Int

Returns the number of child transitions in the TransitionSet.

Return
Int: The number of child transitions in the TransitionSet.

removeListener

@NonNull open fun removeListener(@NonNull listener: Transition.TransitionListener): TransitionSet

removeTarget

@NonNull open fun removeTarget(@IdRes targetId: Int): TransitionSet

removeTarget

@NonNull open fun removeTarget(@NonNull target: View): TransitionSet

removeTarget

@NonNull open fun removeTarget(@NonNull target: Class<*>): TransitionSet

removeTarget

@NonNull open fun removeTarget(@NonNull target: String): TransitionSet

removeTransition

@NonNull open fun removeTransition(@NonNull transition: Transition): TransitionSet

Removes the specified child transition from this set.

Parameters
transition Transition: The transition to be removed.
Return
TransitionSet: This transitionSet object.

setDuration

@NonNull open fun setDuration(duration: Long): TransitionSet

Setting a non-negative duration on a TransitionSet causes all of the child transitions (current and future) to inherit this duration.

Parameters
duration Long: The length of the animation, in milliseconds.
Return
TransitionSet: This transitionSet object.

setEpicenterCallback

open fun setEpicenterCallback(epicenterCallback: Transition.EpicenterCallback?): Unit

setInterpolator

@NonNull open fun setInterpolator(@Nullable interpolator: TimeInterpolator?): TransitionSet

setOrdering

@NonNull open fun setOrdering(ordering: Int): TransitionSet

Sets the play order of this set's child transitions.

Parameters
ordering Int: ORDERING_TOGETHER to play this set's child transitions together, ORDERING_SEQUENTIAL to play the child transitions in sequence.
Return
TransitionSet: This transitionSet object.

setPathMotion

open fun setPathMotion(pathMotion: PathMotion?): Unit

setPropagation

open fun setPropagation(propagation: TransitionPropagation?): Unit

setStartDelay

@NonNull open fun setStartDelay(startDelay: Long): TransitionSet