Android的RelativeLayout孩子左右

Uma*_* A. 4 android relativelayout

我正在尝试创建一个布局,其中有一个RelativeLayout和两个子.这两个孩子是TextView和ImageView.我希望文本从RelativeLayout和ImageView的最左边开始,到RelativeLayout的右边.

我需要使用哪些属性?

代码不起作用.

<RelativeLayout 
    android:clickable="true"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:background="@drawable/android_btn_large" 
    android:gravity="center_vertical">

    <TextView 
            android:id="@+id/txtButton"
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content"
            android:text="Riverside Park" 
            android:textColor="#FFFFFF"
            android:layout_alignParentLeft="true">
    </TextView>
    <ImageView 
            android:id="@+id/imgButton"
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:layout_alignParentRight="true"
            android:src="@drawable/plus_icon_480">
     </ImageView>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

以上工作但将按钮拉伸到fill_parent.

Mik*_*oos 13

应该做的工作

<RelativeLayout 
    android:clickable="true"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:background="@drawable/android_btn_large"
    android:gravity="center_vertical">

<TextView 
    android:id="@+id/txtButton"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/imgButton"
    android:text="Riverside Park"
    android:textColor="#FFFFFF"
    android:layout_alignParentLeft="true"></TextView>

<ImageView 
    android:id="@id/imgButton"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:layout_toLeftOf="@+id/txtButton"
    android:layout_centerVertical="true"
    android:layout_alignParentRight="true"
    android:src="@drawable/plus_icon_480">        
</ImageView>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

注意在TextView中有+ id,而在ImageView中没有"+"".但是你应该在两个视图上使用线性布局,权重设置为"1".

  • RelativeLayout中不存在循环依赖关系. (4认同)