2

我在线性布局上有两个按钮,我想并排放置(彼此左右),但我无法将它们放在正确的位置。

为了澄清:我希望填充框彼此重叠,但底部的按钮并排。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<EditText
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="49dp"
    android:hint="@string/FN"
    android:inputType="textPersonName"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="49dp"
    android:hint="@string/LN"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/textView3"
    android:layout_width="wrap_content"
    android:layout_height="49dp"
    android:hint="@string/PN"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/textView4"
    android:layout_width="wrap_content"
    android:layout_height="49dp"
    android:hint="@string/EA"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/textView5"
    android:layout_width="wrap_content"
    android:layout_height="49dp"
    android:hint="@string/REEA"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/textView6"
    android:layout_width="wrap_content"
    android:layout_height="49dp"
    android:hint="@string/User"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
    android:id="@+id/textView7"
    android:layout_width="wrap_content"
    android:layout_height="49dp"
    android:hint="@string/Pw"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/textView8"
    android:layout_width="wrap_content"
    android:layout_height="49dp"
    android:text="@string/Gender"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
    android:id="@+id/textView9"
    android:layout_width="wrap_content"
    android:layout_height="49dp"
    android:text="@string/Country"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<Button
    android:id="@+id/button1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:text="@string/clear" />

<Button
    android:id="@+id/button2"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:text="@string/submit" />

我编辑了代码,以便更好地理解。

在解决问题时我唯一能找到的是将 layout_weight 设置为相同,但它们只是彼此重叠。

谢谢。

4

5 回答 5

1

1)将按住按钮的线性布局设置为水平方向。

2) 将每个按钮的布局权重设置为 1

*3) 将每个按钮的宽度设置为 0dp

这些按钮现在将缩放并占据 50%

根据评论编辑:这是你想要的吗?

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >

<TextView
   />

<EditText
     >    
</EditText>

<EditText
   />

<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/editText2"       
    >

        <Button
            android:id="@+id/button1"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="wrap_content"            
            android:text="Button1" />

        <Button
            android:id="@+id/button2"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="wrap_content"            
            android:text="Button2" />

</LinearLayout>

看起来是这样的:(编辑线性布局中的布局宽度,使其不占满整个屏幕)

在此处输入图像描述

于 2013-09-09T03:29:56.110 回答
0

为按钮和 android:weightSum=2 为线性布局分配 layout_weight 为 1。此外,在线性布局中,设置 android:orientation="horizo​​ntal"。

于 2013-09-09T03:26:46.043 回答
0

对于垂直,你可以写成:

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

        <Button
            android:id="@+id/button1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/clear" />

        <Button
            android:id="@+id/button2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/submit" />

    </LinearLayout>

对于水平:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >

    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/clear" />

    <Button
        android:id="@+id/button2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/submit" />

</LinearLayout>

以任何你喜欢的方式去做。

于 2013-09-09T03:53:51.687 回答
0
  • 添加一个LinearLayout,您希望按钮以水平方向放置。
  • 将按钮放在该 LinearLayout 中。
  • layout_weight="1"两个按钮和layout_width="0dp"

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
...>

<EditText
.../>

<EditText
.../>

<EditText
.../>

<EditText
... />

<EditText
.../>

<EditText
.../>


<EditText
.../>


<TextView
.../>

<TextView
.../>

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

    <Button
        android:id="@+id/button1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/clear" />

    <Button
        android:id="@+id/button2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/submit" />

</LinearLayout>

注意:当您在 LinearLayout 中指定一长串视图时,请务必在所有屏幕上检查它,尤其是较小的屏幕,它们都正确显示。否则使用 ScrollView 作为父级

于 2013-09-09T04:09:21.603 回答
0

检查这是否是您想要的。布局顶部的 2 个按钮。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
tools:context=".MainActivity" >
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">

<Button
android:id="@+id/button1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="clear"
 android:textAppearance="?android:attr/textAppearanceMedium"  />

<Button
android:id="@+id/button2"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="submit"
 android:textAppearance="?android:attr/textAppearanceMedium"  />

</LinearLayout>


<EditText
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="FN"
android:inputType="textPersonName"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="LN"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="PN"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="EA"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="REEA"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/textView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="user"
android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
android:id="@+id/textView8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Gender"
android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
android:id="@+id/textView9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="country"
android:textAppearance="?android:attr/textAppearanceMedium" />



</LinearLayout>

如果您希望将 2 个按钮放在 bootom 中,然后在 textView9 之后放置带有 2 个按钮的线性布局。祝您好运!!!

于 2013-09-09T07:00:06.230 回答