2013-06-19 2 views
1

imageКак получить высоту и ширину макета во время выполнения?

в этом образе, как получить высоту и ширину красной коробки, как показано на рисунке как найти в время выполнения, а не в XML-файле

+0

Вы можете использовать getLayoutParams из красного макета. Там у вас есть опции, чтобы получить марку высоты/ширины и т. Д. –

+0

У меня есть два макета, один из которых - верхний, другой - это красный ящик в этом красном поле, я не хочу отображать представление списка. plz скажите мне, как –

ответ

3

Вы можете сделать ListView в качестве детского вида Red Layout. Чтобы достичь этого, вам не нужна высота/ширина. Просто создайте listview внутри красного макета в layout.xml и дайте fill_parent как layout_height и layout_width.

Для Ex:

<LinearLayout android:id="@+id/redLayout"> 
    <ListView android:layout_height="fill_parent" 
      android:layout_width="fill_parent"/> 
</LinearLayout> 
+0

s works thnks ... –

0

Посмотрите на View docs на Android SDK сайт. Они объясняют различные размеры, скопированные версии Батим здесь:

размер, отступы и поля

Размер зрения выражен с шириной и высотой. Вид фактически имеет две пары значений ширины и высоты.

Первая пара известна как измеренная ширина и измеренная высота. Эти размеры определяют, как большой вид должен находиться в пределах его родительского элемента (см. Макет для более подробной информации.) Измеренные размеры можно получить с помощью , вызывающего getMeasuredWidth() и getMeasuredHeight().

Вторая пара просто известна как ширина и высота, или иногда ширина рисунка и высота чертежа. Эти размеры определяют фактический размер изображения на экране, во время рисования и после макета. Эти значения могут, но не обязательно, отличаться от измеренной ширины и высоты. Ширина и высота можно получить, вызвав getWidth() и getHeight().

Для измерения его размеров, вид учитывает его прокладку. Отступы выражены в пикселях слева, сверху, справа и внизу части обзора. Заполнение может использоваться для смещения содержимого изображения на определенное количество пикселей. Например, левое заполнение 2 будет толкать содержимое представления на 2 пикселя справа от края . Заполнение может быть установлено с помощью метода setPadding (int, int, int, int) или setPaddingRelative (int, int, int, int) и запрошено путем вызова getPaddingLeft(), getPaddingTop(), getPaddingRight(), getPaddingBottom() , getPaddingStart(), getPaddingEnd().

Несмотря на то, что представление может определять заполнение, оно не предоставляет поддержки полей для полей . Однако группы просмотра предоставляют такую ​​поддержку. См. ViewGroup и ViewGroup.MarginLayoutParams для дальнейшей информации .

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