VectorDrawable на ImageButton уродливый

У меня есть следующий ImageButton:

ic_whatshot_48px - это VectorDrawable:

<!--?xml version="1.0" encoding="utf-8"?-->
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:width="48dp" android:height="48dp" android:viewportwidth="48" android:viewportheight="48">
 </vector>

Но изображение масштабируется и размывается и уродливо.

Почему? Он VectorDrawable, он должен быть приятным и плавным.

1 ответ

Возможно, слишком поздно ответить на это, но могут быть и другие люди, которые имеют одинаковую проблему.

Проблема связана с шириной и высотой в векторном определении. Вы устанавливаете его на низкое значение, установите его на более высокое значение, и вы закончите.

Если вы хотите использовать его для многоэкранных размеров, вам нужно сделать что-то вроде этого:

Затем определим это в res/values:

<resources>
 <dimen name="vector_size">24dp</dimen>
</resources>

Для получения дополнительной информации о том, почему вам нужно предоставить ширину и высоту для векторов, прочитайте следующее:

Общие сведения об объектах Android VectorDrawable

licensed under cc by-sa 3.0 with attribution.