Android布局下方和上方

时间:2014-02-05 10:44:11

标签: android xml android-layout layout

我有三个TextView。第一个和第三个定义为不更改文本。第二个,第一个和第三个之间的TextView通过输入获取值。如何在布局中的第一个和第三个之间设置第二个TextView?

<TextView
android:id="@+id/secondtext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/firsttext"
android:layout_above="@+id/thirdtext"
android:layout_alignLeft="@+id/firsttext"
android:layout_alignRight="@+id/thirdtext"
android:background="@drawable/border"
android:scrollbars="vertical"
android:textAppearance="?android:attr/textAppearanceMedium" />

这不起作用!

<TextView
        android:id="@+id/secondtext"
        android:layout_width="282dp"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/firsttext"
        android:layout_below="@+id/firsttext"
        android:background="@drawable/border"
        android:ellipsize="marquee"
        android:lines="4"
        android:scrollbars="vertical"
        android:textAppearance="?android:attr/textAppearanceMedium" />

这也行不通

4 个答案:

答案 0 :(得分:1)

依赖项太多,请检查是否在xml中收到任何循环依赖项错误。根据您的要求,无需指定间距和其他UI细节,解决方案:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@android:color/black" >

    <TextView
        android:id="@+id/firsttext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@android:color/white"
        android:text="first"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/secondtext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/firsttext"
        android:background="@android:color/white"
        android:text="second"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/thirdtext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/secondtext"
        android:background="@android:color/white"
        android:text="third"
        android:textAppearance="?android:attr/textAppearanceMedium" />

</RelativeLayout>

答案 1 :(得分:0)

尝试

android:layout_width="match_parent"
android:layout_centerInParent="true"
android:layout_toLeftOf="@id/thirdText"
android:layout_toRightOf="@id/firstText"

确保首先使用固定宽度和

添加左右TextView
android:layout_alignParentLeft="true"

android:layout_alignParentRight="true" 

答案 2 :(得分:0)

你的问题不明确。但试试这个...... 如果您使用相对布局作为父级,则

<TextView
android:id="@+id/secondtext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@id/firsttext"
android:background="@drawable/border"
android:scrollbars="vertical"
android:textAppearance="?android:attr/textAppearanceMedium" />

以水平方式显示三个文本视图。

<TextView
android:id="@+id/secondtext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/firsttext"
android:background="@drawable/border"
android:scrollbars="vertical"
android:textAppearance="?android:attr/textAppearanceMedium" />

以垂直方式显示..

答案 3 :(得分:0)

使用LinearLayoutheight="wrap_content"定义width="fill_parent"

您可以通过两种方式克服您的问题。在 Textviews 中添加android:layout_below="@id/TextViewExample"或使用android:layout_marginTop="10dip"

  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@android:color/black" >

        <TextView
            android:id="@+id/firsttext"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@android:color/white"
            android:text="first"
             android:layout_marginTop="10dip"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <TextView
            android:id="@+id/secondtext"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/firsttext"
            android:background="@android:color/white"
            android:text="second"
            android:layout_below="@id/firstText"
             android:layout_marginTop="20dip"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <TextView
            android:id="@+id/thirdtext"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/secondtext"
            android:background="@android:color/white"
            android:text="third"
             android:layout_marginTop="30dip"
            android:textAppearance="?android:attr/textAppearanceMedium" 
            android:layout_below="@id/secondtext"/>

    </LinearLayout>