Android: Как остановить Android 1.6+ из масштабирования изображений

StackOverflow https://stackoverflow.com/questions/4091921

Вопрос

Я обновил свою сборку для построения против Android 1.6, и теперь мои растровые изображения уменьшаются на экранах высокой плотности. Я не хочу этого поведения. Я дал это выстрел:

http://blog.tomgibara.com/post/190539066/android-uncaled-bitmaps.

Но изображения все еще масштабируются, то есть, если я не устанавливаю их на определенную высоту и ширину. Если я использую wrap_content Они масштабированы.

У меня есть погрузчик изображений, используя unsached bitmap-загрузчик, чтобы создать нужную, как так:

Bitmap bm = UnscaledBitmapLoader.loadFromResource(imageBufferInputStream);
drawable = new BitmapDrawable(bm);

Какой я позже назначил ImageView, как так:

imageView.setImageDrawable( copyBitmapDrawable( (BitmapDrawable) drawable) );
Это было полезно?

Решение 3

Обертывая растровое изображение с Drawable это проблема. То Drawable Весы Bitmap. Отказ Вместо использования Drawable, назначить то Bitmap к тому ImageView напрямую использую imageView.setImageBitmap(Bitmap).

Другие советы

Чтобы иметь изображение, не масштабируемое при загрузке его из ресурса (например, с BitmapFactory.DeCoderesource), вы должны найти его в RES / DRUCHILABLE-NODPI вместо обычных нанесенных рисунок-LDPI и так далее.

С использованием

new BitmapDrawable(this.getResources(), bmp); 

вместо

 new BitmapDrawable(bmp);

должен решить проблему.

Использовать Imageview.scaletype.. Отказ То CENTER Постоянные преформы без масштабирования, поэтому я думаю, это то, что вы ищете.

Кстати, используете ли вы пиксели или погружения в размере размеров? Использование провалов (независимо от плотности-пикселей) - это средство стандартизации отображения на нескольких разрешениях. Вы найдете пару советов здесь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top