2015-06-02 2 views
-2

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

DisplayMetrics metrics = new DisplayMetrics(); 
     display.getMetrics(metrics); 
     mScale = metrics.density; 

animationLayout.width = (int) (60*mScale); 
     animationLayout.height = (int) (60*mScale); 

imageviews Я использую вид, искаженный немного. Можете ли вы дать мне общую идею/алгоритм о том, как сделать изображения одинаково выглядящими на разных размерах экрана, плотности? вот так: получить плотность экрана устройства. вычислить всю ширину/высоту - setWidth (50 * mScale), setHeight (50 * mScale)?

ответ

1

Если вы хотите, чтобы он занимал весь экран, просто установите его андроид: высота и андроид: атрибуты width в match_parent в xml, он будет автомасштабировать, чтобы заполнить весь экран.

Теперь, если вы хотите, чтобы он отображал изображение, а не искажал его, вы помещали изображение в атрибут src. Если вы хотите, чтобы он исказился, чтобы он заполнил весь экран, поставьте его в фоновом режиме.

Если вы хотите, чтобы разные изображения использовались для разных плотностей, поместите эти рисунки в разные доступные папки (-ldpi, -mdpi, -hdpi, -xhdpi ...), android будет использовать правильный для текущего плотность устройств.

Смежные вопросы