Android 14 关于imageview设置动态padding值导致图标旋转的问题

复制代码
<ImageView
    android:id="@+id/imageView"
    android:layout_width="61dp"
    android:layout_height="61dp"
    android:background="#cccccc"
    android:scaleType="centerCrop"
    android:src="@drawable/googleg_icon_24" />

googleg_icon_24.xml

复制代码
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:height="24dp"
    android:width="24dp"
    android:viewportWidth="24"
    android:viewportHeight="24">
    <path
        android:fillColor="#fff"
        android:pathData="M12,13.9V10.18H21.36C21.5,10.81 21.61,11.4 21.61,12.23C21.61,17.94 17.78,22 12.01,22C6.48,22 2,17.52 2,12C2,6.48 6.48,2 12,2C14.7,2 16.96,2.99 18.69,4.61L15.85,7.37C15.13,6.69 13.88,5.88 12,5.88C8.69,5.88 5.99,8.63 5.99,12C5.99,15.37 8.69,18.12 12,18.12C15.83,18.12 17.24,15.47 17.5,13.9H12Z"/>
</vector>

正常显示

复制代码
int drawablePadding = 48;
Log.i(TAG, "getWidth()=" + imageView.getWidth()+" x getHeight()=" + binding.imageView.getHeight());
imageView.setPadding(drawablePadding, drawablePadding, drawablePadding, drawablePadding);

设置padding值后

imageview中的图标被旋转了180°显示,具体原因不清楚。去掉scaleType="centerCrop"后,图标则不显示,只显示了背景。

相关推荐
承渊政道35 分钟前
【从零开始大模型开发与微调:基于PyTorch与ChatGLM】(从ChatGLM本地化到LoRA、PEFT的高级微调)
android·人工智能·pytorch·chatglm·本地化部署·大模型开发与微调
2601_962885723 小时前
如何用 Python 判断一只股票“追涨”还是“抄底”更有效?
android·开发语言·python
素师良码3 小时前
第10篇:屏ESD Check内核逻辑驱动代码完整拆解
android
高晶3 小时前
Android 短信收发模块从零到实战:权限配置、界面设计、发送接收与兼容性适配全攻略
android·程序员
随遇丿而安3 小时前
第18周:ViewModel 基础功能 + 架构优化
android
问心无愧05136 小时前
[GXYCTF2019]Ping Ping Ping
android·笔记
事圆则缓6 小时前
Kotlin 异步与并发:从一次搜索请求走到状态流
android·开发语言·kotlin
帅得不敢出门7 小时前
Android Framework定制卸载确认窗口
android
Android-Flutter8 小时前
Compose 什么叫重组?怎么样触发重组?
android·compose
硫酸锌018 小时前
安卓手机连接Windows电脑后通过DHCP服务为手机分配IP地址
android·windows·计算机网络