Android应用程序中的两个按钮重叠

时间:2016-05-11 15:15:20

标签: android android-layout

首先,我是Android开发的新手,所以这个问题可能听起来有些少年,但我无法得到答案。我有一个应用程序,我需要并排显示两个不同的按钮。我已经指定了必需的标签,它们在一个模拟器中运行,但在另一个模拟器中运行。下面是我的按钮设计代码:

file_name.xml:

<RelativeLayout>

   //some code here

   <RelativeLayout
      android:layout_width="wrap_content"
      android:layout_height="wrap_content">
      <Button
         android:id="@+id/button1"
         android:layout_width="50dp"
         android:layout_height="50dp"
         android:paddingTop="15dp"
         android:layout_alignParentBottom="true"
         android:layout_alignParentLeft="true"
         android:layout_alignParentStart="true"
         android:layout_marginLeft="36dp"
         android:layout_marginStart="36dp"
         android:layout_marginBottom="36dp" />
      <Button
         android:id="@+id/button2"
         android:layout_width="45dp"
         android:layout_height="45dp"
         android:paddingTop="15dp"
         android:layout_alignParentBottom="true"
         android:layout_alignParentLeft="true"
         android:layout_alignParentStart="true"
         android:layout_marginLeft="96dp"
         android:layout_marginStart="36dp"
         android:layout_marginBottom="36dp"
         android:layout_toRightOf="@+id/button1" />
   </RelativeLayout>

我的标签是否有问题,因为据我所知,layout_toRightOF将在button1的布局完成后放置button2。我也为两者静态提供了marginLeft。

这两个按钮都出现在一个模拟器中(安装了Google Play服务),而不是其他模式(未安装Google Play服务)。是不是因为没有安装谷歌播放服务?或者我的按钮设计有些错误?

任何形式的帮助都会有所帮助。

提前谢谢你。

2 个答案:

答案 0 :(得分:0)

<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <Button
        android:text="1"
        android:id="@+id/button1"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:paddingTop="15dp"
        android:layout_marginLeft="36dp"
        android:layout_marginStart="36dp"
        android:layout_marginBottom="36dp" />
    <Button
        android:text="2"
        android:id="@+id/button2"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:paddingTop="15dp"
        android:layout_marginLeft="96dp"
        android:layout_marginStart="36dp"
        android:layout_marginBottom="36dp"
        android:layout_toRightOf="@+id/button1" />
</RelativeLayout

希望这有帮助

答案 1 :(得分:0)

是否有必要使用相对布局? 如果你需要两个并排的按钮,你可以只使用一个线性水平。就像这样。

<LinearLayout
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:weightSum="10"
  android:orientation="horizontal"
  >
<Button
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="5"
    />
<Button
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="5"
    />
</LinearLayout>

相对布局为您提供了更大的灵活性,但它必须执行两次测量过程(Reference)。所以,如果你选择线性布局会更好。