【问题标题】:Android RelativeLayout children to left and rightAndroid的RelativeLayout子级左右
【发布时间】:2011-10-30 02:33:44
【问题描述】:

我正在尝试创建一个布局,其中有一个 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>

上述方法有效,但将按钮拉伸到 fill_parent。

【问题讨论】:

    标签: android android-relativelayout


    【解决方案1】:

    应该做的工作

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

    请注意,TextView 中有 +id,而 ImageView 中没有“+”。但是,您应该在两个视图上使用权重设置为“1”的线性布局。

    【讨论】:

    • RelativeLayout 中不能存在循环依赖。
    【解决方案2】:

    layout_alignparentleft="true" 用于左侧子项 (TextView),layout_alignparentright="true" 用于右侧子项 (ImageView)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-08
      • 2020-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-03
      • 2013-08-20
      • 1970-01-01
      相关资源
      最近更新 更多