Os arquivos de desenho vetorial da Biblioteca de suporte Android 23.2 estão embaçados

A versão mais recente da Biblioteca de suporte do Android (23.2) adiciona suporte para drawables vetoriais. Parece fazer isso rasterizando os vetores rapidamente em plataformas que não suportam nativamente desenháveis vetoriais.

No entanto, a imagem rasterizada parece ter um tamanho fixo e não depende do uso. Aqui está um exemplo.

Vetor

<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>

Layout

<ImageView
  android:layout_width="128dp"
  android:layout_height="128dp"
  android:id="@+id/imageView"
  app:srcCompat="@drawable/vector1"/>

O vetor é 24dp x 24dp. É usado em um ImageView com 128dp x 128dp. Nas plataformas que não suportam desenháveis de vetor, a imagem resultante fica embaçada porque o vetor é rasterizado em 16dp e redimensionado para 128dp.

A única solução que encontrei é criar um vetor extraível para cada tamanho pretendido. É muito irritante criar um monte de vetores duplicados com apenas as alterações de altura e largura. E isso não resolve o problema se você deseja que o drawable preencha_parent ou seja dimensionado dinamicamente de alguma outra maneira.

Ter que definir as dimensões de suas imagens vetoriais em avançadoquase derrota completamente o benefício de usar vetores em primeiro lugar.

Alguém tem uma verdadeira solução?

questionAnswers(2)

yourAnswerToTheQuestion