1

我想知道如何实现这样的布局:


| ----------- ------------ |
| |txt状态| |txt日期 | |
| ----------- ------------ |
|-------------------------------------------------
这一点是txtStatus应该在屏幕的最右边,txtDate应该在屏幕的最左边LinearLayout

我不想在这里设置任何边距和特定大小。

我当前的 xml 布局是这样的:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/shareRow"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="right"
    android:gravity="right"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/txtDate"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:gravity="right"/>

    <TextView
        android:id="@+id/txtStatus"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="left"
        android:gravity="left" />
</LinearLayout>
4

7 回答 7

2

最好使用相对布局

 <RelativeLayout
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
 <TextView
android:id="@+id/txtDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="right"
android:layout_alignParentRight="true"/>

<TextView
android:id="@+id/txtStatus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="left"
android:layout_alignParentLeft="true" />
</RelativeLayout>

如果您对 LinearLayout 感到满意,可以使用以下

<LinearLayout
    android:id="@+id/shareRow"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/txtStatus"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="left"
        android:text="Hai how are you" />

    <TextView
        android:id="@+id/txtDate"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="right"
        android:text="Hai there" />
</LinearLayout>
于 2013-11-11T10:06:47.187 回答
0

尝试使用以下代码

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/shareRow"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:gravity="right"
android:orientation="horizontal" >

<TextView
    android:id="@+id/txtDate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="right"
    android:gravity="right"/>  

<TextView
    android:layout_width="0dp"
    android:layout_weight="1"
    android:layout_height="wrap_content"
    android:gravity="right"/>

<TextView
    android:id="@+id/txtStatus"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="left"
    android:gravity="left" />

中间视图将获得左右视图之间剩余的空间,但什么都不会看到

于 2013-11-11T10:04:14.847 回答
0

试试这个可能对你有帮助...

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/shareRow"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="100" >

<TextView
    android:id="@+id/txtStatus"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="5dp"
    android:layout_marginRight="5dp"
    android:layout_weight="50" />

<TextView
    android:id="@+id/txtDate"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginLeft="5dp"
    android:layout_marginRight="5dp"
    android:layout_weight="50" />

于 2013-11-11T10:04:27.070 回答
0

这是您的解决方案

<LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_marginTop="5dp"
                    android:gravity="center"
                    android:orientation="horizontal"
                    android:paddingLeft="5dp"
                    android:weightSum="20" >

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:layout_weight="10"
                        android:gravity="center"
                        android:orientation="horizontal" >

                        <TextView
                            android:id="@+id/txtDate"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:layout_weight="5"
                            android:gravity="left"
                            android:text="Date : "
                            android:textColor="#000000"
                            android:textSize="12sp" />

                        <TextView
                            android:id="@+id/txtStatus"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:layout_weight="5"
                            android:gravity="left"
                            android:text="Status : "
                            android:textColor="#000000"
                            android:textSize="12sp" />
                    </LinearLayout>
                </LinearLayout>
于 2013-11-11T10:00:42.880 回答
0

你需要RelativeLayout在里面LinearLayout。并用and放在TextViewsRelative 中。layout_alignParentLeft="true"layout_alignParentRight="true"

于 2013-11-11T10:03:12.700 回答
0
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="horizontal"
                android:weightSum="100" >

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

                    <TextView
                        android:id="@+id/txtDate"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_weight="50"
                        android:gravity="left"
                        android:text="Date"/>

                    <TextView
                        android:id="@+id/txtStatus"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_weight="50"
                        android:gravity="right"
                        android:text="Status"/>
            </LinearLayout>
  </LinearLayout>
于 2013-11-11T10:06:43.890 回答
0

改为使用RelativeLayout:对于各自的 textViews 使用layout_alignParentLeftlayout_alignParentRight作为 true

<TextView
    android:id="@+id/txtDate"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="right"
    android:text="right"
    android:layout_alignParentRight="true"/>

<TextView
    android:id="@+id/txtStatus"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="left"
    android:text="left"
    android:gravity="left"
    android:layout_alignParentLeft="true" />

于 2013-11-11T10:03:50.253 回答