1

我想做一个简单的事情:将 3 张图片放在一个布局中 - 一张在左边,第二张在中间,第三张在右边。

这是我的代码:

<LinearLayout  android:id="@+id/linearV" 
        android:background="@drawable/gradientbg" 
        android:orientation="horizontal" 
        android:layout_width="fill_parent" 
        android:layout_height="50dip"       
         >
         <ImageView android:id="@+id/headerimage1"           
            android:layout_height="fill_parent" 
            android:layout_width="100dip" 
            android:src="@drawable/image1"
            android:scaleType="fitXY"/>
         <ImageView android:id="@+id/headerimage2"            
            android:layout_height="fill_parent" 
            android:layout_width="100dip" 
            android:src="@drawable/image2"
            android:scaleType="fitXY"/>
        <ImageView android:id="@+id/headerimage3"             
            android:layout_height="fill_parent" 
            android:layout_width="100dip"
            android:src="@drawable/image3"
            android:scaleType="fitXY"
            />             
    </LinearLayout>

我尝试将:“android:gravity”标签添加到每个 ImageView,但它似乎没有任何效果。

4

5 回答 5

2

如果您坚持使用线性布局,请对图像使用 layout_weight,对线性布局使用WeightSum

于 2012-08-02T11:13:15.560 回答
1

你必须使用RelativeLayout。检查此链接: http ://android-coding.blogspot.com.es/2011/03/example-of-relativelayout.html

于 2012-08-02T11:12:03.293 回答
0

这应该可以解决您的问题

<LinearLayout  android:id="@+id/linearV" 
    android:background="@drawable/gradientbg" 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="50dip"       
     >
     <ImageView android:id="@+id/headerimage1"           
        android:layout_height="fill_parent" 
        android:layout_width="100dip" 
        android:src="@drawable/image1"
        android:layout_weight="1.0"/>
     <ImageView android:id="@+id/headerimage2"            
        android:layout_height="fill_parent" 
        android:layout_width="100dip" 
        android:src="@drawable/image2"
        android:layout_weight="1.0"/>
    <ImageView android:id="@+id/headerimage3"             
        android:layout_height="fill_parent" 
        android:layout_width="100dip"
        android:src="@drawable/image3"
        android:layout_weight="1.0"
        />             
</LinearLayout>
于 2012-09-26T06:08:40.263 回答
0

当然,这可以通过使用 a 来实现LinearLayout,只需使用layout_gravity参数,然后将其值设置为center, left, right.. 或其他任何值。你甚至可以组合其中的一些。

你应该看看文档

于 2012-11-10T13:13:03.293 回答
-1

您应该使用相对布局,而不是 LinearLayout,

<RelativeLayout android:id="@+id/linearV" 
        android:background="@drawable/gradientbg" 
        android:orientation="horizontal" 
        android:layout_width="fill_parent" 
        android:layout_height="50dip" >

         <ImageView android:id="@+id/headerimage1"           
            android:layout_height="fill_parent" 
            android:layout_width="100dip" 
            android:src="@drawable/image1"
            android:scaleType="fitXY"
            android:layout_alignParentLeft="true" />

         <ImageView android:id="@+id/headerimage2"            
            android:layout_height="fill_parent" 
            android:layout_width="100dip" 
            android:src="@drawable/image2"
            android:scaleType="fitXY"
            android:layout_centerHorizontal="true" />

        <ImageView android:id="@+id/headerimage3"             
            android:layout_height="fill_parent" 
            android:layout_width="100dip"
            android:src="@drawable/image3"
            android:scaleType="fitXY"
            android:layout_alignParentRight="true" />           

    </RelativeLayout >
于 2012-08-02T11:14:34.103 回答