Я слышал о ImageView ScaleType, поэтому у меня есть фоновое изображение в ImageView вместо фона макета, но я не могу настроить его так, как хочу.
Как настроить макет или ImageView для масштабирования изображения (по ширине) в соответствии с шириной экрана И масштабирования высоты с тем же масштабом?
Мне нужен второй экран на картинке:

ОБНОВЛЕНИЕ:
Я пытаюсь использовать код, но получаю 0 ширины + не могу поверить, что это невозможно сделать из XML с помощью ImageView.
Drawable imageDrawable = getResources().getDrawable(imageResource);
contentContainer.setBackgroundDrawable(imageDrawable);
Rect rect = imageDrawable.getBounds();
int originalWidth = rect.width();
int originalHeight = rect.height();
Display display = getActivity().getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = originalHeight * (width/originalWidth);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(width, height);
contentContainer.setLayoutParams(layoutParams);
contentContainer.post(new Runnable() {
@Override
public void run() {
contentContainer.setScaleY(contentContainer.getScaleX());
Rect rect = contentContainer.getBackground().getBounds();
int originalWidth = rect.width();
int originalHeight = rect.height();
Display display = getActivity().getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = originalHeight * (width/originalWidth);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(width, height);
contentContainer.setLayoutParams(layoutParams);
}
}
Подробнее здесь: https://stackoverflow.com/questions/198 ... ley-scalex
Мобильная версия