2015-09-03 19 views
0

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

Попытка сделать что-то вроде

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="self.width" 
... 

Как я мог это сделать?

Поскольку я буду использовать recycleview, я могу редактировать высоту во время выполнения.

+0

не может сделать это с помощью XML –

+0

Пути изменения размера (и потерь соотношения сторон) или путем обрезков? Также неясно, есть ли каждый элемент только ImageView или ImageView и TextView (что означает «каждый, имеющий какой-то текст в нем»?) – JHH

ответ

0

программным образом найти ширину вашего макета и установить это значение как высоту вашего макета.

//get Width 
int width=layout.getWidth(); 

//set height 
layout.getLayoutParams().height=width; 
0

XML не является динамическим. Экранные измерения должны выполняться на Java во время onCreate.

Display display = getWindowManager().getDefaultDisplay(); 
    Point size = new Point(); display.getSize(size); 
    int width=size.x; int height=size.y; 

LinearLayout.LayoutParams params= new LinearLayout.LayoutParams(width,width); 
yourView.setLayoutParams(params); 
0
should be like this,if you want height for full screen use match_parent also 

<RelativeLayout 
android:layout_width="match_parent" 
android:layout_height="match_parent" 

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