3

Мой XML выглядит следующим образомAndroid ImageView расширить всю ширину экрана

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="#FFFFFF"> 

<TableLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
    <TableRow android:layout_weight="1" android:gravity="center"> 
     <ImageView android:layout_height="200dp" 
      android:layout_width = "wrap_content" 
      android:src="@drawable/saltnpepper"     
      android:scaleType="centerInside" /> 
    </TableRow> 

    <TableRow android:layout_weight="3" > 
    <ListView android:id="@+id/list1" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content" 
    > 

    </ListView> 
</TableRow> 
<TableRow android:layout_weight="1" android:gravity="center"> 
    <ImageView android:layout_height="100dp" 
      android:layout_width = "wrap_content" 
      android:src="@drawable/halal" 
      android:scaleType="centerInside"/> 
</TableRow> 
</TableLayout> 

Мой экран в настоящее время, как это:

enter image description here

Я хочу Saltnpepper изображение расширить поперек ширина экрана, я попытался установить ImageViewlayout_height до 0dp, но изображение исчезает тогда. Кроме того, я попытался его layout_width как match_parent, но он не работает

Кроме того, я хочу, чтобы добавить некоторый запас к ListView, но весь table_layout движется, если добавить marginRight или marginLeft к ListView элементу.

+0

андроида: layout_width = "match_parent" делает эту работу? и для списка, попробуйте paddingLeft и paddingRight – X3Btel

+0

+0

Спасибо, Adeel, это сработало! только теперь изображение растянуто, может быть, я должен положить его в фоновом режиме – Samra

ответ

0

Так я пытался все решения, но одна вещь работала, а другая вещь есть скручены. Я попробовал решение Adeel Turk's fitXY, которое сразу же приложило мое изображение к экрану, но изображение было слишком растянутым, поэтому теперь я поместил свое изображение в качестве фона, и это дает мне хороший результат.

Вот мой XML

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="match_parent" 
android:layout_height="match_parent" 
> 

<TableLayout 
android:layout_width="match_parent" 
android:layout_height="match_parent"  
android:background="@drawable/saltnpepper"> 
<TableRow android:layout_weight="1" android:gravity="center"> 
    <TextView android:layout_height="200dp"/> 
</TableRow> 

<TableRow android:layout_weight="4" > 
<ListView android:id="@+id/list1" 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content" 
> 

</ListView> 
</TableRow> 
<TableRow android:layout_weight="1" android:gravity="center"> 
<ImageView android:layout_height="100dp" 
     android:layout_width = "wrap_content" 
     android:src="@drawable/halal" 
     android:scaleType="centerInside"/> 
</TableRow> 
</TableLayout></LinearLayout> 

enter image description here

1

На вашем ImageView установите ширину макета на match_parent. Также задайте цвет фона ImageView, чтобы вы могли видеть, сколько места он занимает. Оттуда вы хотите использовать scaleType, чтобы сформировать (обрезать/подгонять/etc) изображение в пространство ImageView.

0

Установите ширину изображений для соответствия match_parent и height для wrap_content, чтобы поддерживать соотношение сторон, вы можете использовать adjustViewBounds для параметра TRUE.

0

Используйте ниже код .... и попробовать это ...

android:layout_width = "match_parent" 
android:paddingLeft="10dp" 
android:paddingRight="10dp" 
android:paddingTop="10dp" 
android:adjustViewBounds="true" 

Finale код:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#FFFFFF"> 

    <TableLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 
     <TableRow android:layout_weight="1" android:gravity="center"> 
      <ImageView android:layout_height="200dp" 
       android:layout_width = "match_parent" 
       android:src="@drawable/saltnpepper" 
       android:paddingLeft="10dp" 
       android:paddingRight="10dp" 
        android:paddingTop="10dp" 
       android:adjustViewBounds="true" 
       android:scaleType="centerInside" /> 
     </TableRow> 

     <TableRow android:layout_weight="3" > 
     <ListView android:id="@+id/list1" 
      android:layout_height="wrap_content" 
      android:layout_width="wrap_content" 
     > 

     </ListView> 
    </TableRow> 
    <TableRow android:layout_weight="1" android:gravity="center"> 
     <ImageView android:layout_height="100dp" 
       android:layout_width = "wrap_content" 
       android:src="@drawable/halal" 
       android:scaleType="centerInside"/> 
    </TableRow> 
    </TableLayout> 
+0

nope image didnot expand – Samra