如何从图形布局中指定android元素之间的空格

时间:2015-08-13 15:10:23

标签: android sqlite android-layout layout android-layout-weight

我已经创建了一个在图形布局上显示完美结果的布局,但是当我启动应用程序时,它的模拟器非常奇怪。

enter image description here

仿真器

enter image description here

我已尝试marginPadding两者,但我仍未在模拟器中获得所需的输出。

以下是我的xml文件。所有内容都包含在relativeLayout标记

XML文件

<TextView
    android:id="@+id/successMessage"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="14dp"
    android:gravity="center"
    android:text="Launch Complain"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:layout_marginBottom="50pt"
     />

<Button
    android:id="@+id/btnSendMessage"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="83dp"
    android:gravity="center"
    android:text="Send Message" />

<EditText
    android:id="@+id/userMessage"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:ems="10"
    android:gravity="center"
    android:hint="Complain"
    android:inputType="textMultiLine" >

    <requestFocus />
</EditText>

<EditText
    android:id="@+id/txtShopName"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/userMessage"
    android:layout_alignLeft="@+id/userMessage"
    android:layout_marginBottom="46dp"
    android:ems="10"
    android:gravity="center"
    android:hint="Shop Name"
    android:inputType="textPersonName" />

2 个答案:

答案 0 :(得分:1)

目前,您的观看次数主要取决于相对于屏幕中心的位置。你需要的是将你的意见相对于彼此。

使用android:layout_below =&#34; @ + id / item_ID&#34;将视图放在另一个视图下面,如下所示:

 <TextView
        android:id="@+id/successMessage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="14dp"
        android:gravity="center"
        android:text="Launch Complain"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:layout_marginBottom="50pt"
         />

  <EditText
        android:id="@+id/txtShopName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/successMessage"
        android:layout_marginBottom="46dp"
        android:ems="10"
        android:gravity="center"
        android:hint="Shop Name"
        android:inputType="textPersonName" />

   <EditText
        android:id="@+id/userMessage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/txtShopName"
        android:layout_centerHorizontal="true"
        android:ems="10"
        android:gravity="center"
        android:hint="Complain"
        android:inputType="textMultiLine" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/btnSendMessage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/userMessage"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="83dp"
        android:gravity="center"
        android:text="Send Message" />

答案 1 :(得分:0)

这不是一个图形问题,它是由于键盘聚焦到&#34; EditText-抱怨&#34;而发生的。要解决此问题,您需要使用Manifest文件。试试这个

   <activity
        android:name=".Your Activity"           
        android:label="@string/title_activity_register"          
        android:windowSoftInputMode="adjustPan" >
    </activity>

这里 android:windowSoftInputMode =&#34; adjustPan&#34; 来管理您的问题。 For more