Los dibujos vectoriales de la Biblioteca de soporte de Android 23.2 están borrosos
La última versión de la Biblioteca de soporte de Android (23.2) agrega soporte para dibujos vectoriales. Parece hacer esto rasterizando los vectores sobre la marcha en plataformas que no admiten nativamente los dibujos vectoriales.
Sin embargo, la imagen rasterizada parece tener un tamaño fijo y no depender del uso. Aquí hay un ejemplo.
Vector
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zm0,3c1.66,0 3,1.34 3,3s-1.34,3 -3,3 -3,-1.34 -3,-3 1.34,-3 3,-3zm0,14.2c-2.5,0 -4.71,-1.28 -6,-3.22 0.03,-1.99 4,-3.08 6,-3.08 1.99,0 5.97,1.09 6,3.08 -1.29,1.94 -3.5,3.22 -6,3.22z"/>
</vector>
Diseño
<ImageView
android:layout_width="128dp"
android:layout_height="128dp"
android:id="@+id/imageView"
app:srcCompat="@drawable/vector1"/>
El vector es 24dp x 24dp. Se usa en un ImageView de 128dp x 128dp. En plataformas que no admiten dibujos vectoriales, la imagen resultante es borrosa porque el vector se rasteriza a 16dp y se redimensiona a 128dp.
La única solución que he encontrado es crear un vector separado que se pueda dibujar para cada tamaño deseado. Es bastante molesto crear un montón de vectores duplicados con solo los cambios de altura y ancho. Y eso no resuelve el problema si desea que el elemento dibujable fill_parent o tenga un tamaño dinámico de alguna otra manera.
Tener que definir las dimensiones de sus imágenes vectoriales en avanzadocasi derrota completamente el beneficio de usar vectores en primer lugar.
¿Alguien tiene una verdadera solución?