一组图像视图不适合横向模式

时间:2011-11-04 08:53:32

标签: android imageview orientation landscape

我有一组需要在屏幕顶部设置的10个图像视图。在纵向模式下,根据要求是完美的。但是当我将屏幕方向转为横向时,图像的数量保持不变,但宽度明显不适合布局。我的意思是10个图像视图集只占屏幕的50%。

我尝试过许多不同的方式,但我仍然无法为风景做到这一点

这是我的xml说main.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 个答案:

答案 0 :(得分:1)

你去了

<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"属性。祝你好运。

答案 1 :(得分:0)

在Linearlayout标签中删除

  

机器人:取向=&#34;水平&#34;

属性和更改

  

机器人:layout_width =&#34; WRAP_CONTENT&#34;

试试吧

答案 2 :(得分:0)

尝试使用android:layout_weight="1"android:layout_width="fill_parent"。这将确保所有对象共享整个布局宽度,并且每个对象占用相同的空间。

答案 3 :(得分:0)

尝试,

<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>