RelativeLayout布局上下两控件左右对齐的方法

   前段工作时,遇到一个布局困惑:有两个控件,上面是一个imageview,显示一个图片,现在是一个textview,显示一句话。这里两个控件要无缝上下布局,呈现出来的就是pop dialog的样子。所以需要上下两个控件左右对齐。

   上面的控件是个imageview,那么这个pop的长度实际上是由下面的textview中内容的长度来决定的。所以需要第一个控件与第二个控件左右对齐才行。

大家尝试的时候会发现,如果是按照这个顺序,将imageview放在上面,而textview放在下面,imageview设置为于textview左右对齐是错误的。因为在对齐的时候,下面的控件还未定义,属于不可知的。

所以我采用的方法如下,让textview所在的布局位于imageview的下面,如果设置imageview在textview的上面是行不通的,大家可以试试看:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   
	android:id="@+id/noButton"
    android:orientation="vertical"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:gravity="center_vertical|center_horizontal"
    android:background="@android:color/transparent"	>


	<TextView
    	android:id="@+id/alert_content_full"
    	android:layout_width="wrap_content" 
    	android:layout_height="wrap_content" 
    	android:textAppearance="@style/tcl_toast_text"
    	android:background="@drawable/tcl_alert_content_rec"
     	android:layout_below="@+id/alert_title_full"
     	android:paddingLeft="30dp"
	android:paddingRight="30dp"
   	android:text="11111111111111222222222222222222222222223333333333333333333"/>
               
   	<ImageView 
	    android:id="@+id/alert_title_full" 
	    android:layout_width="wrap_content" 
	    android:layout_height="wrap_content" 
	    android:minHeight="50dip"
	
	    android:layout_alignLeft="@+id/alert_content_full"
	    android:layout_alignRight="@+id/alert_content_full"
	    android:background="@drawable/tcl_alert_title" 
    > 
    </ImageView>
</RelativeLayout> 

猜你喜欢

转载自xiamidatou-gmail-com.iteye.com/blog/1628236