Я создал собственное представление, которое расширяет ImageView. Когда я устанавливаю векторный рисунок, область просмотра которого меньше, я замечаю, что изображение размыто. Если я просто использую ImageView, я вижу, что векторное изображение резкое, как и должно быть.
В моем пользовательском представлении я переопределяю «setImageDrawable», где я вызываю super, а затем получаю растровое изображение из drawable для рисования позже в onDraw
.
Вот как я конвертирую в растровое изображение
public Bitmap getBitmapFromDrawable(Drawable drawable) {
Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(),
drawable.getIntrinsicHeight(),
Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
drawable.draw(canvas);
return bitmap;
}