2012-08-02 44 views
1

我想做一件简单的事情:将3个图像放在一个布局中 - 一个在左边,第二个在中间,第三个在右边。在布局中放置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> 

我已经尽力了补充:“安卓重力”的标签给每个ImageView的,但它似乎并没有产生任何影响。

+0

这个xml代码现在发生了什么? – Renjith 2012-08-02 11:10:43

+0

您应该将宽度设置为0dp,或者使用relativelayout或将每个imageview放入framelayout等框架布局具有0dp宽度的位置。 – Warpzit 2012-08-02 11:22:24

回答

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

@reson 大声笑,你有改进的格式,答案被成功接受后:) – 2012-08-04 20:36:24

+0

得到您的编辑徽章不知何故! – trgraglia 2012-08-06 12:23:47

+0

@trgraglia 是的,这是作弊;) – 2012-08-07 10:12:17

2

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

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

当然,这是通过使用LinearLayout可能的,只要使用layout_gravity参数,然后将其值设为centerleftright ..或其他任何其他。你甚至可以结合其中的一些。

你应该看看doc