У меня есть макет с фоновым изображением. Ширина изображения должна быть такой же, как ширина экрана (match_parent). Но это уродливо, ОС не растягивает изображение по высоте.
Я слышал о Scaletype ImageView, поэтому у меня есть фоновое изображение в изображении, вместо фона макета, но я не могу конфигурации, чтобы быть тем, что я хочу. Scale? + Я не могу поверить, что это не может быть сделано из XML с изображением. < /p>
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