#android #splash-screen #android-12
Вопрос:
Я нахожусь в процессе настройки нового экрана-заставки, в котором реализуется Android 12
.
Я смог изменить значок на тот, который я хочу использовать
"< item name="windowSplashScreenAnimatedIcon">@drawable/...</item >"
но потому, что это слово, а не значок, который поместится в круглую форму, но слово растянулось, чтобы поместиться в круг. Есть ли способ изменить форму или размер значка или фона значка, чтобы этого не произошло?
Ответ №1:
Обновить
Если вы используете вектор , который можно нарисовать в качестве 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>
Вы можете настроить scaleX
и scaleY
в соответствии с вашими потребностями. Убедитесь, что pixotX
и pivotY
-это ровно половина viewportWidth
и viewportHeight
, чтобы масштабирование происходило от центра.
Старый Ответ
Прямого способа изменить размер значка нет, но вы можете следовать приведенному ниже подходу, чтобы добавить отступ к значку, чтобы он не обрезался. Имейте в виду, что это не лучший подход и является лишь временным решением.
<?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>
Установите этот файл в качестве windowSplashScreenAnimatedIcon
. Вы можете настроить заполнение в соответствии с вашими потребностями.
Комментарии:
1. Это просто потрясающе! Отличный ответ.