Я пытаюсь расположить логотип моей компании по центру экрана запуска приложения.
Логотип приложения не квадратный, это широкое прямоугольное изображение.
Я полагаю, что попробовал каждую комбинацию гравитации и типа шкалы, однако я все еще не могу выровнять прямоугольное изображение на экране без искажений.
Всплывающее представление должно быть готово немедленно, даже до того, как вы сможете надуть файл макета в своей заставке, поэтому я использую растровое изображение.
Требования к стартовому экрану с неквадратным логотипом :
- без искажений
- все изображение видно
- использует
bitmap
- вертикально и горизонтально по центру
Большинство обучающих программ, которые я использовал, имели следующий пример:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@android:color/white"/>
<item>
<bitmap
android:gravity="center"
android:src="@mipmap/logo"
/>
</item>
</layer-list>
, который не работал (он сделал высоту изображения такой же, как на экране, так как это широкий прямоугольник, левая и правая сторона логотипа не видна, логотип увеличен, а стороны отрезать)
Чтобы исправить это, я попытался добавить android:scaleType="center"
, который исправил обрезку, но исказил изображение.
Эта проблема звучит как распространенная проблема, однако я все еще не могу исправить свой код и достичь желаемого результата.
Есть ли какие-то проблемы, потому что моя версия Android не самая последняя? Разрешение png может вызвать проблемы (они еще не изменены)?
Я знаю, что создание нового квадратного актива решает проблему, но я хотел бы знать, что я делаю неправильно.