Android: Как остановить Android 1.6+ из масштабирования изображений
Вопрос
Я обновил свою сборку для построения против 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
Постоянные преформы без масштабирования, поэтому я думаю, это то, что вы ищете.
Кстати, используете ли вы пиксели или погружения в размере размеров? Использование провалов (независимо от плотности-пикселей) - это средство стандартизации отображения на нескольких разрешениях. Вы найдете пару советов здесь.