Loading api/current.xml +49 −1 Original line number Diff line number Diff line Loading @@ -2484,6 +2484,17 @@ visibility="public" > </field> <field name="baseline" type="int" transient="false" volatile="false" value="16843565" static="true" final="true" deprecated="not deprecated" visibility="public" > </field> <field name="baselineAlignBottom" type="int" transient="false" Loading Loading @@ -234184,6 +234195,17 @@ visibility="public" > </method> <method name="getBaselineAlignBottom" return="boolean" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > </method> <method name="getDrawable" return="android.graphics.drawable.Drawable" abstract="false" Loading Loading @@ -234256,6 +234278,32 @@ <parameter name="alpha" type="int"> </parameter> </method> <method name="setBaseline" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="baseline" type="int"> </parameter> </method> <method name="setBaselineAlignBottom" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="aligned" type="boolean"> </parameter> </method> <method name="setColorFilter" return="void" abstract="false" Loading Loading @@ -246683,7 +246731,7 @@ deprecated="not deprecated" visibility="public" > <parameter name="t" type="T"> <parameter name="arg0" type="T"> </parameter> </method> </interface> core/java/android/widget/ImageView.java +64 −5 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.util.AttributeSet; import android.util.Log; import android.view.RemotableViewMethod; import android.view.View; import android.view.ViewDebug; import android.widget.RemoteViews.RemoteView; Loading Loading @@ -84,7 +85,8 @@ public class ImageView extends View { private boolean mCropToPadding; private boolean mBaselineAligned = false; private int mBaseline = -1; private boolean mBaselineAlignBottom = false; private static final ScaleType[] sScaleTypeArray = { ScaleType.MATRIX, Loading Loading @@ -118,9 +120,12 @@ public class ImageView extends View { setImageDrawable(d); } mBaselineAligned = a.getBoolean( mBaselineAlignBottom = a.getBoolean( com.android.internal.R.styleable.ImageView_baselineAlignBottom, false); mBaseline = a.getDimensionPixelSize( com.android.internal.R.styleable.ImageView_baseline, -1); setAdjustViewBounds( a.getBoolean(com.android.internal.R.styleable.ImageView_adjustViewBounds, false)); Loading Loading @@ -878,9 +883,63 @@ public class ImageView extends View { } } /** * <p>Return the offset of the widget's text baseline from the widget's top * boundary. </p> * * @return the offset of the baseline within the widget's bounds or -1 * if baseline alignment is not supported. */ @Override @ViewDebug.ExportedProperty(category = "layout") public int getBaseline() { return mBaselineAligned ? getMeasuredHeight() : -1; if (mBaselineAlignBottom) { return getMeasuredHeight(); } else { return mBaseline; } } /** * <p>Set the offset of the widget's text baseline from the widget's top * boundary. This value is overridden by the {@link #setBaselineAlignBottom} * property.</p> * * @param baseline The baseline to use, or -1 if none is to be provided. * * @see #setBaseline * @attr ref android.R.styleable#ImageView_baseline */ public void setBaseline(int baseline) { if (mBaseline != baseline) { mBaseline = baseline; requestLayout(); } } /** * Set whether to set the baseline of this view to the bottom of the view. * Setting this value overrides any calls to setBaseline. * * @param aligned If true, the image view will be baseline aligned with * based on its bottom edge. * * @attr ref android.R.styleable#ImageView_baselineAlignBottom */ public void setBaselineAlignBottom(boolean aligned) { if (mBaselineAlignBottom != aligned) { mBaselineAlignBottom = aligned; requestLayout(); } } /** * Return whether this view's baseline will be considered the bottom of the view. * * @see #setBaselineAlignBottom(boolean) */ public boolean getBaselineAlignBottom() { return mBaselineAlignBottom; } /** Loading core/res/res/values/attrs.xml +3 −0 Original line number Diff line number Diff line Loading @@ -2055,6 +2055,9 @@ <attr name="baselineAlignBottom" format="boolean" /> <!-- If true, the image will be cropped to fit within its padding. --> <attr name="cropToPadding" format="boolean" /> <!-- The offset of the baseline within this view. See {see android.view.View#getBaseline} for details --> <attr name="baseline" format="dimension" /> </declare-styleable> <declare-styleable name="ToggleButton"> <!-- The text for the button when it is checked. --> Loading core/res/res/values/public.xml +1 −0 Original line number Diff line number Diff line Loading @@ -1376,6 +1376,7 @@ <public type="attr" name="progressBarPadding" /> <public type="attr" name="animationResolution" /> <public type="attr" name="state_accelerated" /> <public type="attr" name="baseline" /> <public type="anim" name="animator_fade_in" /> <public type="anim" name="animator_fade_out" /> Loading core/res/res/values/styles.xml +0 −6 Original line number Diff line number Diff line Loading @@ -155,12 +155,6 @@ <item name="windowExitAnimation">@anim/shrink_fade_out_from_bottom</item> </style> <!-- {@hide} --> <style name="Animation.SlidingCard"> <item name="windowEnterAnimation">@anim/slide_in_up</item> <item name="windowExitAnimation">@anim/slide_out_down</item> </style> <!-- Window animations that are applied to input method overlay windows. --> <style name="Animation.InputMethod"> <item name="windowEnterAnimation">@anim/input_method_enter</item> Loading Loading
api/current.xml +49 −1 Original line number Diff line number Diff line Loading @@ -2484,6 +2484,17 @@ visibility="public" > </field> <field name="baseline" type="int" transient="false" volatile="false" value="16843565" static="true" final="true" deprecated="not deprecated" visibility="public" > </field> <field name="baselineAlignBottom" type="int" transient="false" Loading Loading @@ -234184,6 +234195,17 @@ visibility="public" > </method> <method name="getBaselineAlignBottom" return="boolean" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > </method> <method name="getDrawable" return="android.graphics.drawable.Drawable" abstract="false" Loading Loading @@ -234256,6 +234278,32 @@ <parameter name="alpha" type="int"> </parameter> </method> <method name="setBaseline" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="baseline" type="int"> </parameter> </method> <method name="setBaselineAlignBottom" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="aligned" type="boolean"> </parameter> </method> <method name="setColorFilter" return="void" abstract="false" Loading Loading @@ -246683,7 +246731,7 @@ deprecated="not deprecated" visibility="public" > <parameter name="t" type="T"> <parameter name="arg0" type="T"> </parameter> </method> </interface>
core/java/android/widget/ImageView.java +64 −5 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.util.AttributeSet; import android.util.Log; import android.view.RemotableViewMethod; import android.view.View; import android.view.ViewDebug; import android.widget.RemoteViews.RemoteView; Loading Loading @@ -84,7 +85,8 @@ public class ImageView extends View { private boolean mCropToPadding; private boolean mBaselineAligned = false; private int mBaseline = -1; private boolean mBaselineAlignBottom = false; private static final ScaleType[] sScaleTypeArray = { ScaleType.MATRIX, Loading Loading @@ -118,9 +120,12 @@ public class ImageView extends View { setImageDrawable(d); } mBaselineAligned = a.getBoolean( mBaselineAlignBottom = a.getBoolean( com.android.internal.R.styleable.ImageView_baselineAlignBottom, false); mBaseline = a.getDimensionPixelSize( com.android.internal.R.styleable.ImageView_baseline, -1); setAdjustViewBounds( a.getBoolean(com.android.internal.R.styleable.ImageView_adjustViewBounds, false)); Loading Loading @@ -878,9 +883,63 @@ public class ImageView extends View { } } /** * <p>Return the offset of the widget's text baseline from the widget's top * boundary. </p> * * @return the offset of the baseline within the widget's bounds or -1 * if baseline alignment is not supported. */ @Override @ViewDebug.ExportedProperty(category = "layout") public int getBaseline() { return mBaselineAligned ? getMeasuredHeight() : -1; if (mBaselineAlignBottom) { return getMeasuredHeight(); } else { return mBaseline; } } /** * <p>Set the offset of the widget's text baseline from the widget's top * boundary. This value is overridden by the {@link #setBaselineAlignBottom} * property.</p> * * @param baseline The baseline to use, or -1 if none is to be provided. * * @see #setBaseline * @attr ref android.R.styleable#ImageView_baseline */ public void setBaseline(int baseline) { if (mBaseline != baseline) { mBaseline = baseline; requestLayout(); } } /** * Set whether to set the baseline of this view to the bottom of the view. * Setting this value overrides any calls to setBaseline. * * @param aligned If true, the image view will be baseline aligned with * based on its bottom edge. * * @attr ref android.R.styleable#ImageView_baselineAlignBottom */ public void setBaselineAlignBottom(boolean aligned) { if (mBaselineAlignBottom != aligned) { mBaselineAlignBottom = aligned; requestLayout(); } } /** * Return whether this view's baseline will be considered the bottom of the view. * * @see #setBaselineAlignBottom(boolean) */ public boolean getBaselineAlignBottom() { return mBaselineAlignBottom; } /** Loading
core/res/res/values/attrs.xml +3 −0 Original line number Diff line number Diff line Loading @@ -2055,6 +2055,9 @@ <attr name="baselineAlignBottom" format="boolean" /> <!-- If true, the image will be cropped to fit within its padding. --> <attr name="cropToPadding" format="boolean" /> <!-- The offset of the baseline within this view. See {see android.view.View#getBaseline} for details --> <attr name="baseline" format="dimension" /> </declare-styleable> <declare-styleable name="ToggleButton"> <!-- The text for the button when it is checked. --> Loading
core/res/res/values/public.xml +1 −0 Original line number Diff line number Diff line Loading @@ -1376,6 +1376,7 @@ <public type="attr" name="progressBarPadding" /> <public type="attr" name="animationResolution" /> <public type="attr" name="state_accelerated" /> <public type="attr" name="baseline" /> <public type="anim" name="animator_fade_in" /> <public type="anim" name="animator_fade_out" /> Loading
core/res/res/values/styles.xml +0 −6 Original line number Diff line number Diff line Loading @@ -155,12 +155,6 @@ <item name="windowExitAnimation">@anim/shrink_fade_out_from_bottom</item> </style> <!-- {@hide} --> <style name="Animation.SlidingCard"> <item name="windowEnterAnimation">@anim/slide_in_up</item> <item name="windowExitAnimation">@anim/slide_out_down</item> </style> <!-- Window animations that are applied to input method overlay windows. --> <style name="Animation.InputMethod"> <item name="windowEnterAnimation">@anim/input_method_enter</item> Loading