有没有办法改变 Android 12 中启动屏幕图标的形状?

emm*_*one 20 android splash-screen android-12

我正在定制正在实施的新启动屏幕Android 12
我已经能够将图标更改为我想要使用的图标

"< item name="windowSplashScreenAnimatedIcon">@drawable/...</item >"
Run Code Online (Sandbox Code Playgroud)

但因为它是一个单词而不是一个适合圆形的图标,但是单词已经拉伸以适合圆形。有没有办法改变图标或图标背景的形状或大小,这样就不会发生这种情况?

Meh*_*iya 11

更新

如果您使用矢量可绘制对象作为windowSplashScreenAnimatedIcon,那么您可以使用group来更改大小,这在大多数情况下效果很好。只需将所有path矢量绘图包裹起来,group如下所示。

<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportWidth="1024"
    android:viewportHeight="1024">

    <group
        android:pivotX="512"
        android:pivotY="512"
        android:scaleX="0.50"
        android:scaleY="0.50">
        
        <path
        android:fillColor="@color/whiteColor"
        android:pathData="M18,16.08c-0.76,0 -1.44,0.3 -1.96,0.77L8.91,12.7c0.05,-0.23 0.09,-0.46 0.09,-0.7s-0.04,-0.47 -0.09,-0.7l7.05,-4.11c0.54,0.5 1.25,0.81 2.04,0.81 1.66,0 3,-1.34 3,-3s-1.34,-3 -3,-3 -3,1.34 -3,3c0,0.24 0.04,0.47 0.09,0.7L8.04,9.81C7.5,9.31 6.79,9 6,9c-1.66,0 -3,1.34 -3,3s1.34,3 3,3c0.79,0 1.5,-0.31 2.04,-0.81l7.12,4.16c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.61 1.31,2.92 2.92,2.92s2.92,-1.31 2.92,-2.92 -1.31,-2.92 -2.92,-2.92z"/>

    </group>
</vector>
Run Code Online (Sandbox Code Playgroud)

您可以根据需要调整scaleX和。scaleY确保 和pixotX正好pivotY是 和 的一半viewportWidthviewportHeight以便缩放从中心开始。

旧答案

没有直接的方法可以更改图标的大小,但您可以按照以下方法向图标添加填充,以免被裁剪。请记住,这不是最好的方法,只是一个临时解决方案。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:bottom="44dp"
        android:drawable="@drawable/ic_splash_logo"
        android:left="44dp"
        android:right="44dp"
        android:top="44dp"
        />
</layer-list>
Run Code Online (Sandbox Code Playgroud)

将此文件设置为windowSplashScreenAnimatedIcon. 您可以调整填充以满足您的需要。