Набор изображений, не подходящих для ландшафтного режима - PullRequest
0 голосов
/ 04 ноября 2011

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

Я пробовал разными способами, но все же я не могу сделать это для пейзажа

Вот мое высказывание xmlmain.xml

<RelativeLayout android:id="@+id/relativeLayout1" 
 android:layout_width="fill_parent" android:layout_height="fill_parent" 
 xmlns:android="http://schemas.android.com/apk/res/android">

<LinearLayout 
android:layout_alignParentTop="true"
android:id="@+id/progresslayout" 
android:orientation="horizontal"
android:layout_width="wrap_content" android:layout_height="wrap_content">

 <ImageView android:src="@drawable/progressgreen" android:id="@+id/pb1"
    android:layout_height="wrap_content" android:layout_width="wrap_content"
    android:layout_alignParentLeft="true"></ImageView>


<ImageView android:src="@drawable/progressgreen" android:id="@+id/pb2"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"></ImageView>

<ImageView android:src="@drawable/progressgreen" android:id="@+id/pb3"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"></ImageView>

<ImageView android:src="@drawable/progressgreen" android:id="@+id/pb4"
    android:layout_toRightOf="@+id/pb3" android:layout_height="wrap_content"
    android:layout_width="wrap_content"></ImageView>

<ImageView android:src="@drawable/progressgreen" android:id="@+id/pb5"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"></ImageView>

<ImageView android:src="@drawable/progressgreen" android:id="@+id/pb6"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"></ImageView>

<ImageView android:src="@drawable/progressgreen" android:id="@+id/pb7"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"></ImageView>

<ImageView android:src="@drawable/progressgreen" android:id="@+id/pb8"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"></ImageView>

<ImageView android:src="@drawable/progressgreen" android:id="@+id/pb9"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"></ImageView>

 <ImageView android:src="@drawable/progressgreen" android:id="@+id/pb10"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"></ImageView>

    </LinearLayout>

    </RelativeLayout>

Я также пытался задать свойство android: layout_weight = "", но все равно бесполезно.Интересно отметить, что вместо просмотра изображений, если я попробую то же самое с какой-либо кнопкой или отредактирую текстовое поле, оно отлично подойдет как для портрета, так и для ландшафта

Ответы [ 4 ]

1 голос
/ 04 ноября 2011

Вот, пожалуйста,

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/relativeLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<LinearLayout
    android:id="@+id/progresslayout"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/pb1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <ImageView
        android:id="@+id/pb2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <ImageView
        android:id="@+id/pb3"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <ImageView
        android:id="@+id/pb4"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <ImageView
        android:id="@+id/pb5"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <ImageView
        android:id="@+id/pb6"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <ImageView
        android:id="@+id/pb7"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <ImageView
        android:id="@+id/pb8"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <ImageView
        android:id="@+id/pb9"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <ImageView
        android:id="@+id/pb10"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:src="@drawable/ic_launcher" >
    </ImageView>
</LinearLayout>

Не забудьте заменить android:src="@drawable/ic_launcher" на ваш ресурс изображения.Это создаст десять изображений сверху экрана, красиво расположенных между собой.

Если вы не хотите оставлять пробелы между изображениями, используйте свойство android:scaleType="fitXY" для каждого изображения.Удачи.

0 голосов
/ 04 ноября 2011

Попробуйте,

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/relativeLayout1"
android:weightSum="2"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<LinearLayout
    android:id="@+id/progresslayout"
    android:layout_weight="1"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:weightSum="10"
    android:orientation="horizontal" >
 // Your ImageViews Here
    <ImageView  
    android:id="@+id/pb10"  
    android:layout_weight="1"
    android:layout_width="0dp"  
    android:layout_height="fill_parent"  
    android:src="@drawable/image1" >  
    </ImageView>  

</LinearLayout>
</LinearLayout>
0 голосов
/ 04 ноября 2011

Попробуйте использовать android:layout_weight="1" и android:layout_width="fill_parent". Это обеспечит, чтобы все объекты имели общую ширину макета и каждый занимал одинаковое пространство.

0 голосов
/ 04 ноября 2011

В теге Linearlayout удалить

Android: ориентация = "горизонтальные"

атрибут и изменение

андроида: layout_width = "wrap_content"

Попробуй

...