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"后,图标则不显示,只显示了背景。

相关推荐
weixin_440784117 分钟前
Java线程池工作原理浅析
android·java·开发语言·okhttp·android studio·android runtime
2501_944396199 分钟前
Flutter for OpenHarmony 视力保护提醒App实战 - 性能优化技巧
android·flutter·性能优化
龚礼鹏20 分钟前
图像显示框架十二——BufferQueue的工作流程(基于Android 15源码分析)
android
_F_y26 分钟前
MySQL用户管理
android·mysql·adb
TheNextByte129 分钟前
如何将照片从计算机传输到Android /iPhone
android·gitee·iphone
sun0077001 小时前
Android 默认的日志记录方式
android
瓦特what?1 小时前
C++编程防坑指南(小说版)
android·c++·kotlin
独处东汉2 小时前
freertos开发空气检测仪之输入子系统按键驱动测试
android·java·数据库
m0_748229992 小时前
Laravel3.x:回顾经典框架的早期特性
android
阿俊-全栈开发2 小时前
CRMEB 单商户对接汇付支付完整实现
android