diff options
6 files changed, 41 insertions, 8 deletions
diff --git a/core/java/android/view/transition/Transition.java b/core/java/android/view/transition/Transition.java index 45919425efba..205c825e6b0b 100644 --- a/core/java/android/view/transition/Transition.java +++ b/core/java/android/view/transition/Transition.java @@ -798,7 +798,7 @@ public abstract class Transition { // TODO: how does this work with instances? // TODO: this doesn't actually do *anything* yet int numAnimators = mCurrentAnimators.size(); - for (int i = 0; i < numAnimators; ++i) { + for (int i = numAnimators - 1; i >= 0; i--) { Animator animator = mCurrentAnimators.get(i); animator.cancel(); } diff --git a/tests/TransitionTests/res/layout/interruption_inner_1.xml b/tests/TransitionTests/res/layout/interruption_inner_1.xml index 990a7fdb0d31..f82dfb08bb91 100644 --- a/tests/TransitionTests/res/layout/interruption_inner_1.xml +++ b/tests/TransitionTests/res/layout/interruption_inner_1.xml @@ -9,5 +9,12 @@ android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:text="@string/state1"/> + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:id="@+id/button1" + android:layout_alignLeft="@+id/button" + android:layout_below="@+id/button" + android:text="@string/state1"/> </RelativeLayout>
\ No newline at end of file diff --git a/tests/TransitionTests/res/layout/interruption_inner_2.xml b/tests/TransitionTests/res/layout/interruption_inner_2.xml index d18b5571be1f..e6821d6c8acd 100644 --- a/tests/TransitionTests/res/layout/interruption_inner_2.xml +++ b/tests/TransitionTests/res/layout/interruption_inner_2.xml @@ -9,5 +9,12 @@ android:id="@+id/button" android:layout_alignParentRight="true" android:text="@string/state2"/> + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:id="@+id/button1" + android:layout_alignLeft="@+id/button" + android:layout_below="@+id/button" + android:text="@string/state2"/> </RelativeLayout>
\ No newline at end of file diff --git a/tests/TransitionTests/res/layout/interruption_inner_3.xml b/tests/TransitionTests/res/layout/interruption_inner_3.xml index 70bd02cb53ac..4e4015050419 100644 --- a/tests/TransitionTests/res/layout/interruption_inner_3.xml +++ b/tests/TransitionTests/res/layout/interruption_inner_3.xml @@ -9,5 +9,12 @@ android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:text="@string/state3"/> + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:id="@+id/button1" + android:layout_alignLeft="@+id/button" + android:layout_above="@+id/button" + android:text="@string/state3"/> </RelativeLayout>
\ No newline at end of file diff --git a/tests/TransitionTests/res/layout/interruption_inner_4.xml b/tests/TransitionTests/res/layout/interruption_inner_4.xml index 85265fcfb6d2..8c3661eb135a 100644 --- a/tests/TransitionTests/res/layout/interruption_inner_4.xml +++ b/tests/TransitionTests/res/layout/interruption_inner_4.xml @@ -9,5 +9,12 @@ android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:text="@string/state4"/> + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:id="@+id/button1" + android:layout_alignLeft="@+id/button" + android:layout_above="@+id/button" + android:text="@string/state4"/> </RelativeLayout>
\ No newline at end of file diff --git a/tests/TransitionTests/src/com/android/transitiontests/InterruptionTest.java b/tests/TransitionTests/src/com/android/transitiontests/InterruptionTest.java index 47cf00220a04..b380225b8839 100644 --- a/tests/TransitionTests/src/com/android/transitiontests/InterruptionTest.java +++ b/tests/TransitionTests/src/com/android/transitiontests/InterruptionTest.java @@ -35,14 +35,13 @@ public class InterruptionTest extends Activity { private Scene mScene2; private Scene mScene3; private Scene mScene4; - Transition mAutoTransition = new AutoTransition(); + TransitionGroup mSequencedMove = new TransitionGroup(TransitionGroup.SEQUENTIALLY); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.interruption); - View container = (View) findViewById(R.id.container); ViewGroup sceneRoot = (ViewGroup) findViewById(R.id.sceneRoot); mScene1 = new Scene(sceneRoot, R.layout.interruption_inner_1, this); @@ -57,18 +56,24 @@ public class InterruptionTest extends Activity { sceneRoot.setCurrentScene(mScene1); - mAutoTransition.setDuration(1500); + Move move1 = new Move(); + move1.setTargetIds(R.id.button); + Move move2 = new Move(); + move2.setTargetIds(R.id.button1); + + mSequencedMove.addTransitions(move1, move2); + mSequencedMove.setDuration(1000); } public void onRadioButtonClicked(View clickedButton) { if (clickedButton == mScene1RB) { - TransitionManager.go(mScene1, mAutoTransition); + TransitionManager.go(mScene1, mSequencedMove); } else if (clickedButton == mScene2RB) { - TransitionManager.go(mScene2, mAutoTransition); + TransitionManager.go(mScene2, mSequencedMove); } else if (clickedButton == mScene3RB) { - TransitionManager.go(mScene3, mAutoTransition); + TransitionManager.go(mScene3, mSequencedMove); } else { - TransitionManager.go(mScene4, mAutoTransition); + TransitionManager.go(mScene4, mSequencedMove); } } } |