From 64ec030e051af856e46dc01c40f975a13d9569a4 Mon Sep 17 00:00:00 2001 From: Dake Gu Date: Mon, 29 Sep 2014 16:50:45 -0700 Subject: [PATCH] SupportLeanbackDemo: show case of different image scale type b/17703309 Change-Id: Iaf3b5e519e09c7e2a728fe048f8a63e3b9b16cfe --- .../example/android/leanback/CardPresenter.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/samples/SupportLeanbackDemos/src/com/example/android/leanback/CardPresenter.java b/samples/SupportLeanbackDemos/src/com/example/android/leanback/CardPresenter.java index 4c5334288..17688c298 100644 --- a/samples/SupportLeanbackDemos/src/com/example/android/leanback/CardPresenter.java +++ b/samples/SupportLeanbackDemos/src/com/example/android/leanback/CardPresenter.java @@ -23,11 +23,14 @@ import android.view.View.MeasureSpec; import android.view.ViewGroup.LayoutParams; import android.widget.TextView; +import java.util.Random; + public class CardPresenter extends Presenter { private static final String TAG = "CardPresenter"; private static final int IMAGE_HEIGHT_DP = 120; + private static Random sRand = new Random(); private static int sRowHeight = 0; private static int sExpandedRowHeight = 0; @@ -62,8 +65,17 @@ public class CardPresenter extends Presenter { ImageCardView v = new ImageCardView(parent.getContext()); v.setFocusable(true); v.setFocusableInTouchMode(true); - v.setMainImageAdjustViewBounds(true); - v.setMainImageDimensions(LayoutParams.WRAP_CONTENT, getRowHeight(parent.getContext())); + // Randomly makes image view crop as a square or just stretch to original + // aspect ratio. + if (sRand.nextBoolean()) { + v.setMainImageAdjustViewBounds(false); + v.setMainImageDimensions(getRowHeight(parent.getContext()), + getRowHeight(parent.getContext())); + } else { + v.setMainImageAdjustViewBounds(true); + v.setMainImageDimensions(LayoutParams.WRAP_CONTENT, + getRowHeight(parent.getContext())); + } return new ViewHolder(v); }