diff options
Diffstat (limited to 'core/java/android/transition/ChangeBounds.java')
-rw-r--r-- | core/java/android/transition/ChangeBounds.java | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/core/java/android/transition/ChangeBounds.java b/core/java/android/transition/ChangeBounds.java index eb17429..0a44ba2 100644 --- a/core/java/android/transition/ChangeBounds.java +++ b/core/java/android/transition/ChangeBounds.java @@ -117,13 +117,16 @@ public class ChangeBounds extends Transition { private void captureValues(TransitionValues values) { View view = values.view; - values.values.put(PROPNAME_BOUNDS, new Rect(view.getLeft(), view.getTop(), - view.getRight(), view.getBottom())); - values.values.put(PROPNAME_PARENT, values.view.getParent()); - if (mReparent) { - values.view.getLocationInWindow(tempLocation); - values.values.put(PROPNAME_WINDOW_X, tempLocation[0]); - values.values.put(PROPNAME_WINDOW_Y, tempLocation[1]); + + if (view.isLaidOut()) { + values.values.put(PROPNAME_BOUNDS, new Rect(view.getLeft(), view.getTop(), + view.getRight(), view.getBottom())); + values.values.put(PROPNAME_PARENT, values.view.getParent()); + if (mReparent) { + values.view.getLocationInWindow(tempLocation); + values.values.put(PROPNAME_WINDOW_X, tempLocation[0]); + values.values.put(PROPNAME_WINDOW_Y, tempLocation[1]); + } } } |