Android Glide centerCrop/fitCenter与ImageView的scaleType相互作用,Kotlin

本文详细解释了在Android中,Glide库的centerCrop和fitCenter选项与ImageView的scaleType属性如何交互工作,特别是当与ShapeableImageView和RoundedBitmapDrawable结合时,以及如何在Kotlin中实现描边、旋转和圆图效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android Glide centerCrop/fitCenter与ImageView的scaleType相互作用,Kotlin

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/image1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:src="@mipmap/ic_launcher" />

    <ImageView
        android:id="@+id/image2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:src="@mipmap/ic_launcher" />

    <ImageView
        android:id="@+id/image3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scaleType="centerCrop"
        android:src="@mipmap/ic_launcher" />

    <ImageView
        android:id="@+id/image4"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scaleType="fitCenter"
        android:src="@mipmap/ic_launcher" />

</LinearLayout>

        val resId = R.mipmap.p4m
        val size = 500

        val image1 = findViewById<ImageView>(R.id.image1)
        val image2 = findViewById<ImageView>(R.id.image2)
        val image3 = findViewById<ImageView>(R.id.image3)
        val image4 = findViewById<ImageView>(R.id.image4)

        GlideApp.with(this)
            .load(resId)
            .override(size)
            .centerCrop()
            .into(image1)

        GlideApp.with(this)
            .load(resId)
            .override(size)
            .fitCenter()
            .into(image2)

        GlideApp.with(this)
            .load(resId)
            .override(size)
            .fitCenter()
            .into(image3)

        GlideApp.with(this)
            .load(resId)
            .override(size)
            .centerCrop()
            .into(image4)

(一)image1,直接就是Glide设置的centerCrop(),因为ImageView里面的scaleType没有。
(二)image2,直接就是Glide配置的fitCenter(),因为ImageView里面的scaleType没有。
(三)image3,Glide配置了fitCenter(),Glide先按照fitCenter()解码装配Bitmap,然后丢给ImageView显示时候,ImageView里面android:scaleType="centerCrop",此时ImageView又做了一次centerCrop变换,最终展示的是Gldie的fitCenter -> ImageView的centerCrop样式,注意,ImageView里面的centerCrop是基于前一步Glide的fitCenter裁出来的Bitmap。
(四)image4,Glide配置了fitCenter(),Glide先按照fitCenter()解码装配Bitmap,然后丢给ImageView显示,第一步Glide按照fitCenter裁剪出来的Bitmap再按照ImageViewde配置的android:scaleType="fitCenter"显示,因为两次都是fitCenter,所以相当于image1的样式。

Android描边外框stroke边线、rotate旋转、circle圆形图的简洁通用方案,基于Glide与ShapeableImageView,Kotlin_安卓icon描边-CSDN博客文章浏览阅读2k次。Android RoundedBitmapDrawable:Android官方的圆角图形图象实现方案RoundedBitmapDrawable是Android在support v4的扩展包中新增的实现圆角图形的关键类,借助RoundedBitmapDrawable的帮助,可以轻松的以Android标准方式实现圆角图形图象。现在结合他人的代码加以修改,给出一个以原始图形中心为原点,修剪图片为头像的工具类,此类可以直接在布局文件中加载使用,比。所实现的在Kotlin动态代码中绘制的描边效果。_安卓icon描边https://blog.csdn.net/zhangphil/article/details/134314380

Glide transform CircleCrop()圆图,Kotlin-CSDN博客文章浏览阅读678次。文章浏览阅读1.2w次。引入: implementation 'com.github.bumptech.glide:glide:4.9.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'Android标准Glide加载圆形图和圆角矩形图_android glide加载圆角-CSDN博客。Glide transform CircleCrop()圆图,Kotlin。https://blog.csdn.net/zhangphil/article/details/134147774Android Glide transform旋转rotate圆图CircleCrop,Kotlin_android glide旋转-CSDN博客文章浏览阅读662次。引入: implementation 'com.github.bumptech.glide:glide:4.9.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'Android标准Glide加载圆形图和圆角矩形图_android glide加载圆角-CSDN博客。Glide transform CircleCrop()圆图,Kotlin。Glide transform CircleCrop()圆图,Kotlin-CSDN博客。_android glide旋转https://blog.csdn.net/zhangphil/article/details/134149022Android Glide加载transform CenterCrop, CircleCrop ShapeableImageView圆形图并描边,Kotlin_android glide 加载圆形-CSDN博客文章浏览阅读684次。Android RoundedBitmapDrawable:Android官方的圆角图形图象实现方案RoundedBitmapDrawable是Android在support v4的扩展包中新增的实现圆角图形的关键类,借助RoundedBitmapDrawable的帮助,可以轻松的以Android标准方式实现圆角图形图象。现在结合他人的代码加以修改,给出一个以原始图形中心为原点,修剪图片为头像的工具类,此类可以直接在布局文件中加载使用,比。所实现的在Kotlin动态代码中绘制的描边效果。_android glide 加载圆形https://blog.csdn.net/zhangphil/article/details/134297059

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangphil

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值