在相对布局中将控件彼此相邻对齐

时间:2014-05-21 10:15:50

标签: android layout relativelayout

我有2个图像按钮和2个textviews我想按顺序放置它们

textview1 - imagebutton1 - textview2 - imagebutton2

这里的任何人都可以帮我吗?

这是我尝试的但它无法正常工作

<TextView
       android:id="@+id/like_count"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:layout_marginLeft="10dp"
        android:layout_below="@id/comments_list"
        android:textColor="@android:color/white"
        android:textSize="14sp" 
        android:text="10" />

      <ImageButton
        android:id="@+id/like_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:layout_below="@id/comments_list"
        android:layout_toRightOf="@id/like_count"
        android:background="@android:color/transparent"
        android:src="@drawable/xml_like_button_selctor" />

      <TextView
       android:id="@+id/comment_count"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:layout_marginLeft="10dp"
        android:layout_toRightOf="@id/like_button"
        android:textColor="@android:color/white"
        android:textSize="14sp"
        android:text="10"/> 

     <ImageButton
        android:id="@+id/comment_icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:layout_toRightOf="@id/comment_count"
        android:background="@android:color/transparent"
        android:src="@drawable/xml_comment_button_selector" />

4 个答案:

答案 0 :(得分:7)

试试这个..

您可以使用LinearLayout android:orientation="horizontal"以及所有子视图android:layout_width="0dp"android:layout_weight="1"

<LinearLayout
    android:layout_width="fill_parent"
    android:orientation="horizontal"
    android:layout_height="fill_parent" >

    <TextView
        android:id="@+id/like_count"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:layout_weight="1"
        android:text="10"
        android:textColor="@android:color/white"
        android:textSize="14sp" />

    <ImageButton
        android:id="@+id/like_button"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:layout_weight="1"
        android:background="@android:color/transparent"
        android:src="@drawable/xml_like_button_selctor" />

    <TextView
        android:id="@+id/comment_count"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:layout_marginTop="5dp"
        android:text="10"
        android:textColor="@android:color/white"
        android:textSize="14sp" />

    <ImageButton
        android:id="@+id/comment_icon"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:layout_weight="1"
        android:background="@android:color/transparent"
        android:src="@drawable/xml_comment_button_selector" />

</LinearLayout>

答案 1 :(得分:6)

请使用以下相对布局

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#EAEAEA" >

    <TextView 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="text1"
        android:id="@+id/text1"
        />

    <ImageButton 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/imgButton1"
        android:layout_toRightOf="@+id/text1"/>

    <TextView 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="text2"
        android:id="@+id/text2"
        android:layout_toRightOf="@+id/imgButton1"
        />

    <ImageButton 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/text2"
        android:id="@+id/imgButton2"/>


</RelativeLayout>

答案 2 :(得分:0)

为什么不为此使用LinearLayout。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/sliding_pane_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Text1" />

        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Text1" />

        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    </LinearLayout>

</LinearLayout>

答案 3 :(得分:-1)

将TextView宽度更改为wrap_content