Android UI 适配

ImageView的ScaleType模式

2019-01-09  本文已影响0人  郑捡书

作者:郑捡书
转载请注明作者和原文链接,如有行文存在不当请留言说明,谢谢。

xml示例图

控件宽高设置为1:1

xml示例代码

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:background="@color/colorPrimaryDark"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:layout_width="300dp"
        android:layout_height="300dp"
        android:layout_centerInParent="true"
        android:background="@color/colorPrimary" />

</RelativeLayout>

注意:以下展示的原图比例为 1:1, 9:16, 9:16,且图片宽高都大于控件宽高。

1.FitCenter类型

xml代码:android:scaleType="fitCenter"
动态代码:imageView.setScaleType(ScaleType.FIT_CENTER);

2.FitStart类型

xml代码:android:scaleType="fitStart"
动态代码:imageView.setScaleType(ScaleType.FIT_START);

3.FitEnd类型

xml代码:android:scaleType="fitEnd"
动态代码:imageView.setScaleType(ScaleType.FIT_END);

4.FitXy类型

xml代码:android:scaleType="fitXY"
动态代码:imageView.setScaleType(ScaleType.FIT_XY);

5.Center类型

xml代码:android:scaleType="center"
动态代码:imageView.setScaleType(ScaleType.CENTER);

6.CenterCrop类型

xml代码:android:scaleType="centerCrop"
动态码:imageView.setScaleType(ScaleType.CENTER_CROP);

7.CenterInside类型

xml代码:android:scaleType="centerInside"
动态码:imageView.setScaleType(ScaleType.CENTER_INSIDE);

ImageView的ScaleType原理及效果分析

上一篇 下一篇

猜你喜欢

热点阅读