android中的布局问题

时间:2011-01-16 11:38:43

标签: android xml layout textview android-edittext

我尝试显示布局,如图像1(textView和editText在同一行),但我的输出显示像图像2! 我尝试使用此代码:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:padding="5px"
    >

    <TextView 
        android:id="@+id/label"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="URL:"
        android:layout_alignBaseline="@+id/entry"
        android:layout_alignParentLeft="true"/>
        />

    <EditText 
        android:id="@+id/entry"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@id/label"
        android:layout_alignParentTop="true"
        />

    <Button 
        android:id="@+id/button" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:layout_gravity="center_horizontal"
        android:paddingRight="30px" 
        android:paddingLeft="30px" 
        android:text="Go..." 
        />

</LinearLayout>

请帮帮我 感谢

image1

image2

4 个答案:

答案 0 :(得分:4)

试试这个

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"
    android:orientation="vertical">
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content"
    android:orientation="horizontal">
<TextView 
    android:id="@+id/label"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="URL:"
    android:layout_alignBaseline="@+id/entry"
    android:layout_alignParentLeft="true"/>
    />
<EditText 
    android:id="@+id/entry"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@id/label"
    android:layout_alignParentTop="true"
    />
</LinearLayout>
<Button 
    android:id="@+id/button" 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal"
    android:paddingRight="30px" 
    android:paddingLeft="30px" 
    android:text="Go..." 
    />
</LinearLayout>

或使用RelativeLayout

答案 1 :(得分:2)

使用RelativeLayout代替线性,并使用android:rightOf

答案 2 :(得分:1)

据我所知,你不能在线性布局中使用这样的_toRightTop,_BOTTOM属性。使用RelativeLayout,一切都应该没问题。

答案 3 :(得分:1)

使用相对布局而不是线性布局。这样做的一个优点是它可以提高您的性能。如果您尝试搜索和识别线性布局,它将检查线性布局的每个组件并尝试与其匹配id但是通过相对布局,它会更快,因为所有元素都是相对于彼此定义的。