2014-01-30 78 views
0

我正在使用RelativeLayout來顯示我的UI。Android Xamarin - 在RelativeLayout中將控件權利與右邊距對齊

我想在左上角有一個標題,我希望右上角有一個圖像。 兩個項目都需要在上面和側面有一個小間距(左側或右側)。

對於我的標題,這個工程很好,但我似乎無法將我的圖像對齊到右側並設置右邊距。

這是axml代碼:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/dialogContainer" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#FFF" 
    android:paddingBottom="25dip"> 

<TextView 
    android:id="@+id/dialogTitle" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="10dip" 
    android:layout_marginRight="10dip" 
    android:layout_marginTop="10dip" 
    android:textColor="#158849" 
    android:textSize="25dip" /> 

<ImageView 
    android:id="@+id/dialogLoading" 
    android:layout_width="26dip" 
    android:layout_height="26dip" 
    android:background="@drawable/LoadingAnimation" 
    android:layout_marginTop="10dip" 
    android:layout_alignParentRight="true" 
    android:layout_marginRight="25dip" /> <!--this doesn't work, there is no spacing--> 

<TextView 
    android:id="@+id/dialogMessage" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textColor="#000" 
    android:textSize="18dip" 
    android:layout_marginTop="15dp" 
    android:layout_marginLeft="12dip" 
    android:layout_marginRight="15dip" 
    android:layout_below="@+id/dialogTitle" /> 
</RelativeLayout> 

其他事情可能會有所幫助: 這個項目應該是可構建針對Android 2.3的

我不是直接分配該佈局的活動。

而是將其用作自定義對話框的視圖。

回答

1

使用相對佈局的layout_toLeftOf propperty:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/dialogContainer" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#FFF" 
    android:paddingBottom="25dip"> 
    <TextView 
     android:id="@+id/dialogTitle" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="10dip" 
     android:layout_marginRight="10dip" 
     android:layout_marginTop="10dip" 
     android:textColor="#158849" 
     android:textSize="25dip" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentLeft="true" 
     android:layout_toLeftOf="@+id/dialogTitle" 
     android:layout_width="wrap_content" /> 
    <ImageView 
     android:id="@+id/dialogTitle" 
     android:layout_width="26dip" 
     android:layout_height="26dip" 
     android:background="@drawable/LoadingAnimation" 
     android:layout_alignParentRight="true" 
     android:layout_marginTop="10dp" 
     android:layout_marginRight="10dp" 
     android:layout_alignParentTop="true" /> 
<!--this doesn't work, there is no spacing--> 
</RelativeLayout> 

更新我的回答

+0

所以你說:我需要把我的形象「以左邊的」我的頭銜?然後創建一個保證金來將我的圖片向右推?我的標題是可變的,所以我的尺寸也會發生變化... – Recipe

+0

它應該在圖像的左側,無論內容長度如何(我認爲 - 相對佈局沒有發揮很大作用) - 您可以輕鬆地測試..這是每個佈局內部的相對佈局相對於其他(另一個)佈局的位置。 – Milen

+0

你不需要爲其他佈局(圖像視圖)創建邊距 - 只需將父對齊頂部和右對齊設置爲真,因爲父對象是相對佈局本身... – Milen