summaryrefslogtreecommitdiff
path: root/core/java/android/widget/ImageView.java
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2018-11-27 19:09:24 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2018-11-27 19:09:24 +0000
commit02fc5ccc54c4c5f94ab4cf52c7c2c69c136e4c84 (patch)
tree5a2adb53946b30c8a7c1eb76294eccf1f15bf850 /core/java/android/widget/ImageView.java
parent60cfbed4ff3eafd3520ecffa8888edf7078431e0 (diff)
parent3ac312acf0afa08af8f2bb5f25993de9453ab201 (diff)
Merge "Made ImageView.animateTransform(Matrix) public"
Diffstat (limited to 'core/java/android/widget/ImageView.java')
-rw-r--r--core/java/android/widget/ImageView.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/core/java/android/widget/ImageView.java b/core/java/android/widget/ImageView.java
index 3cd074844320..c21182ca597f 100644
--- a/core/java/android/widget/ImageView.java
+++ b/core/java/android/widget/ImageView.java
@@ -1331,9 +1331,17 @@ public class ImageView extends View {
}
}
- /** @hide */
- @UnsupportedAppUsage
- public void animateTransform(Matrix matrix) {
+ /**
+ * Applies a temporary transformation {@link Matrix} to the view's drawable when it is drawn.
+ * Allows custom scaling, translation, and perspective distortion during an animation.
+ *
+ * This method is a lightweight analogue of {@link ImageView#setImageMatrix(Matrix)} to use
+ * only during animations as this matrix will be cleared after the next drawable
+ * update or view's bounds change.
+ *
+ * @param matrix The transformation parameters in matrix form.
+ */
+ public void animateTransform(@Nullable Matrix matrix) {
if (mDrawable == null) {
return;
}
@@ -1341,6 +1349,7 @@ public class ImageView extends View {
final int vwidth = getWidth() - mPaddingLeft - mPaddingRight;
final int vheight = getHeight() - mPaddingTop - mPaddingBottom;
mDrawable.setBounds(0, 0, vwidth, vheight);
+ mDrawMatrix = null;
} else {
mDrawable.setBounds(0, 0, mDrawableWidth, mDrawableHeight);
if (mDrawMatrix == null) {