diff options
author | George Mount <mount@google.com> | 2014-08-22 17:04:02 -0700 |
---|---|---|
committer | George Mount <mount@google.com> | 2014-09-02 15:15:12 -0700 |
commit | c03da0e7a9ef721709d51cf8a2d539a5bd8a320e (patch) | |
tree | 41ffad1cec7f1f4b19615a2bb5262183048439f6 /core/java/android/transition | |
parent | 8fd8124911958ae454c7306698e2f423b0b11e39 (diff) | |
download | frameworks_base-c03da0e7a9ef721709d51cf8a2d539a5bd8a320e.zip frameworks_base-c03da0e7a9ef721709d51cf8a2d539a5bd8a320e.tar.gz frameworks_base-c03da0e7a9ef721709d51cf8a2d539a5bd8a320e.tar.bz2 |
Make Fragment Transitions match Acitivty Transitions API
Bug 17188255
Change-Id: I506a097be4010d7156caf465c95295c58612c16e
Diffstat (limited to 'core/java/android/transition')
-rw-r--r-- | core/java/android/transition/TransitionUtils.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/core/java/android/transition/TransitionUtils.java b/core/java/android/transition/TransitionUtils.java index b0c9e9a..a84ecd1 100644 --- a/core/java/android/transition/TransitionUtils.java +++ b/core/java/android/transition/TransitionUtils.java @@ -40,6 +40,33 @@ public class TransitionUtils { } } + public static Transition mergeTransitions(Transition... transitions) { + int count = 0; + int nonNullIndex = -1; + for (int i = 0; i < transitions.length; i++) { + if (transitions[i] != null) { + count++; + nonNullIndex = i; + } + } + + if (count == 0) { + return null; + } + + if (count == 1) { + return transitions[nonNullIndex]; + } + + TransitionSet transitionSet = new TransitionSet(); + for (int i = 0; i < transitions.length; i++) { + if (transitions[i] != null) { + transitionSet.addTransition(transitions[i]); + } + } + return transitionSet; + } + public static class MatrixEvaluator implements TypeEvaluator<Matrix> { float[] mTempStartValues = new float[9]; |