2013-02-20 86 views
0

我在按钮放置中遇到了一些问题。我正在开发一个应用程序,当应用程序启动相机时打开(自定义)。我在布局中添加了2个按钮,我的问题是我无法调整按钮。我想按钮放置像捕获按钮将在底部中心,上传按钮将在底部在右边。我正在使用以下代码。在Android中按钮放置问题

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

<FrameLayout 
android:id="@+id/camera_preview" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:layout_weight="1" 
> 

</FrameLayout> 
    <Button 
     android:id="@+id/button_upload" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="0dp" 
     android:text="Upload" 
     /> 

    <Button 
     android:id="@+id/button_capture" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="0dp" 
     android:text="Capture" /> 


</RelativeLayout> 

我也试过用LinearLayout。谁能告诉我我在哪里犯错? 在此先感谢。

回答

1

试试这个...

android:layout_centerHorizontal="true" 

在按钮标签

+0

这已经将按钮移动到中心,很好。以及如何将按钮移动到右侧?此外,为什么我无法只拖动按钮和地方我想要的地方? – 2013-02-20 17:53:05

1
<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
> 

    <FrameLayout 
     android:id="@+id/camera_preview" 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:layout_alignBottom="@+id/button_upload" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_weight="1" > 

    </FrameLayout> 

    <Button 
     android:id="@+id/button_upload" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentRight="true" 
     android:text="Upload" /> 

    <Button 
     android:id="@+id/button_capture" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_marginRight="55dp" 
     android:layout_toLeftOf="@+id/button_upload" 
     android:text="Capture" /> 

</RelativeLayout>`enter code here` 
+0

试试这个...我认为这是你想要的... – 2013-02-20 17:56:27

+0

为什么marginRight 55dp?有效。你能否解释我正在犯的错误,以便下次避免。此外,为什么我无法只用鼠标拖拽并将按钮放在任何我想要的位置? – 2013-02-20 17:57:14

+0

我刚刚从填充父项更改Framlayout宽度以包装内容...然后从上传按钮设置边距... – 2013-02-20 18:00:00

0

所以我想通了,这个可以这样做。

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_marginBottom="0dp" 
    android:background="#A9A9A9" 
    android:orientation="vertical" > 

    <FrameLayout 
     android:id="@+id/camera_preview" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:layout_above="@+id/button_capture" 
    /> 
    <Button 
     android:id="@+id/button_capture" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_centerHorizontal="true" 
     android:text="Capture" /> 

    <Button 
     android:id="@+id/button_upload" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentBottom="true" 
     android:text="Upload" /> 

    </RelativeLayout>