android - 布局中的问题

时间:2011-02-24 14:18:16

标签: android android-layout relativelayout

我正在尝试准备与下面附图相同的布局。

我的问题在图片中显示:

  1. 我尝试设置完全相同(宽度)的按钮,如图像
  2. 中的1所示
  3. 我尝试在下方设置“保存”和“取消”按钮,宽度相等。
  4. enter image description here

    我已尝试使用以下XML布局:

    <RelativeLayout
        android:id="@+id/widget38"
        android:layout_width="fill_parent"  
        android:layout_height="fill_parent" 
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:padding="5dp">
    
        <TextView 
            android:layout_width="wrap_content" 
            android:id="@+id/textView1" 
            android:text="Event" 
            android:layout_alignParentLeft="true" 
            android:layout_height="wrap_content">
        </TextView>
    
        <EditText 
            android:layout_width="fill_parent" 
            android:id="@+id/editText1" 
            android:layout_alignParentLeft="true" 
            android:hint="Tap to enter title"
            android:layout_marginTop="5dp"
            android:layout_height="wrap_content"
            android:layout_below="@+id/textView1">
        </EditText>
    
        <View 
            android:id="@+id/separator"         
            android:background="#ffffff"        
            android:layout_width = "fill_parent"
            android:layout_height="1dip"
            android:layout_centerVertical ="true"
            android:layout_below="@+id/editText1"/>
    
        <TextView 
            android:layout_width="wrap_content" 
            android:id="@+id/textView2" 
            android:text="From" 
            android:layout_alignParentLeft="true" 
            android:layout_height="wrap_content"
            android:layout_below="@+id/separator"
            android:layout_marginTop="5dp">
        </TextView>
    
        <Button 
            android:layout_width="wrap_content" 
            android:id="@+id/button1" 
            android:layout_alignParentLeft="true" 
            android:text="Button"
            android:layout_height="wrap_content"
            android:layout_below="@+id/textView2">
        </Button>
    
        <Button 
            android:layout_width="wrap_content" 
            android:id="@+id/button2" 
            android:text="Button"
            android:layout_marginLeft="10dp"
            android:layout_alignTop="@+id/button1" 
            android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/button1"
            android:layout_below="@+id/button1">
        </Button>
    
        <View 
            android:id="@+id/separator1"        
            android:background="#ffffff"        
            android:layout_width = "fill_parent"
            android:layout_height="1dip"
            android:layout_centerVertical ="true"
            android:layout_below="@+id/button2"/>
    
        <TextView 
            android:layout_width="wrap_content" 
            android:id="@+id/textView3" 
            android:text="To" 
            android:layout_alignParentLeft="true" 
            android:layout_height="wrap_content"
            android:layout_below="@+id/separator1"
            android:layout_marginTop="5dp">
        </TextView>
    
        <Button 
            android:layout_width="wrap_content" 
            android:id="@+id/button3" 
            android:layout_alignParentLeft="true" 
            android:text="Button"
            android:layout_height="wrap_content"
            android:layout_below="@+id/textView3">
        </Button>
    
        <Button 
            android:layout_width="wrap_content" 
            android:id="@+id/button4" 
            android:text="Button"
            android:layout_marginLeft="10dp"
            android:layout_alignTop="@+id/button3" 
            android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/button3"
            android:layout_below="@+id/button3">
        </Button>
    
        <RelativeLayout 
            android:layout_width="fill_parent" 
            android:layout_height="wrap_content" 
            android:id="@+id/relativeLayout1" 
            android:layout_alignParentBottom="true">
    
            <Button android:layout_width="wrap_content" android:id="@+id/button5" android:layout_alignParentBottom="true" android:text="Save" android:layout_height="wrap_content"></Button>
            <Button android:layout_width="wrap_content" android:id="@+id/button6" android:layout_alignParentBottom="true" android:text="Cancel" android:layout_height="wrap_content" android:layout_toRightOf="@+id/button5"></Button>
        </RelativeLayout>
    
    
    </RelativeLayout>
    

5 个答案:

答案 0 :(得分:1)

您可以使用android:layout_weight

调整按钮的重量

以下是如何使用它的示例: http://android.amberfog.com/?p=328

答案 1 :(得分:1)

对于标有“图像1”的按钮,您可以设置固定宽度,如“16dip”,即

<Button 
        android:layout_width="16dip" 
        android:id="@+id/button1" 
        android:layout_alignParentLeft="true" 
        android:text="Button"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView2">
    </Button>

对于下面的按钮,您可以添加到水平定向的LinearLayout,其中0宽度和权重值

    <Button 
            android:layout_width="0dip" 
            android:layout_weight="1" 
            android:id="@+id/button4" 
            android:text="Button"
            android:layout_marginLeft="10dp"
            android:layout_alignTop="@+id/button3" 
            android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/button3"
            android:layout_below="@+id/button3">
        </Button>

答案 2 :(得分:0)

您可以使用水平线性布局。对于第一个问题,您应该为.xml布局文件

中的按钮设置“权重”值

答案 3 :(得分:0)

我认为你的问题是你的xml代码不一样吗?

您必须使用android:layout_weight

如果您希望按钮占据相同位置(图片上的取消和有效按钮),则必须为{2}添加android:layout_weight="1"

答案 4 :(得分:0)

在设置内容视图后,在Activity的onCreate()方法中执行以下操作。

findViewById(R.id.button1).setWidth(findViewById(R.id.button5).getWidth());
findViewById(R.id.button2).setWidth(findViewById(R.id.button6).getWidth());

如果有效,请告诉我。