Android Studio:布局预览中显示的距离在设备上显得更大

时间:2013-07-23 19:31:29

标签: android android-layout android-studio

我目前正在学习Android开发,阅读一本书并使用Android Studio进行创建,并使用Nexus 4设备进行测试。我一直在使用布局预览器测试我的布局是否合适。

以下是布局的屏幕截图及其在Android Studio预览器中的显示方式。对不起,大尺寸。

enter image description here

以下是我的Nexus 4设备截图,以显示差异。

enter image description here

正如您所看到的,EditText字段在预览中显示为在行中但在设备上不在线。除了EditTexts之外,我对2个图像进行了比较,其余的元素都应该存在。布局使用了一个左边一个嵌套的LinearLayout。

以下是我在XML中定义了一个EditText的方法。所有其他都是具有不同ID的副本。

<EditText android:id="@+id/editTextColonies"
          android:inputType="number"
          android:ems="12"
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:layout_marginTop="12dp"/>

我想知道这是由我的代码,我的设备还是简单的Android Studio引起的。 提前感谢您的解决方案。

2 个答案:

答案 0 :(得分:2)

如果可以,切换到RelativeLayout,然后可以定义android:layout_toRightOf和android:layout_below XML标记。我不建议使用GUI来放置具有RelativeLayout的对象,因为它非常烦人。使用XML放置它会更容易。

答案 1 :(得分:0)

在EditTexts旁边创建按钮行。每行应该是LinearLayout或RelativeLayout,你应该为每一行设置android:height =“wrap_content”。将按钮编辑文本对放入其中。

<LinearLayout
       android:orientation="vertical"
       android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       xmlns:android="http://schemas.android.com/apk/res/android">

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="bottom" >

         <Button
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="@string/button_name_colonists"
           android:id="@+id/colonistsButton"/>

         <EditText android:id="@+id/editTextColonists"
                android:inputType="number"
                android:ems="12"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="12dp"/>

    </LinearLayout>

</LinearLayout>

要重新使用布局,例如常见的重复行,需要注意的是this link by Google about include.