RelativeLayout高度差异的问题

时间:2015-07-11 10:26:18

标签: android android-layout

在我的android工作室中应该是这样的 http://i.imgur.com/iCvntB9.png 但是当我在我的手机上运行它时,它显示出这样的2个edittexts,与背景屏幕相比,它们已经向上移动了。 http://i.imgur.com/2Cmjz4B.png

我相对较新的Android,并希望有关如何确保它的比例和工作在不同的手机大小的帮助。这是改变位置的2个editTexts。提前致谢

XML代码供参考

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:id="@+id/imageView2"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true"
    android:background="@drawable/mainscreen" />

<ImageView
    android:layout_width="260dp"
    android:layout_height="170dp"
    android:id="@+id/imageView"
    android:background="@drawable/title"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="30dp" />

<Button
    android:layout_width="100dp"
    android:layout_height="50dp"
    android:id="@+id/button"
    android:background="@drawable/predict_b"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="20dp" />

<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/editText"
    android:text="Enter Name"
    android:maxLength="20"
    android:linksClickable="false"
    android:layout_below="@+id/imageView"
    android:layout_alignLeft="@+id/button"
    android:layout_alignStart="@+id/button"
    android:layout_marginTop="20dp" />

<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/editText2"
    android:text="Age"
    android:maxLength="20"
    android:linksClickable="false"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="30dp"
    android:layout_below="@+id/editText" />
<CheckBox
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="43dp"
    android:layout_below="@+id/editText2"
    android:layout_toLeftOf="@+id/button"
    android:layout_toStartOf="@+id/button" />

3 个答案:

答案 0 :(得分:0)

将以下属性添加到AndroidManifest.xml中的活动:

android:windowSoftInputMode="adjustResize"

尝试将您的布局修改为:

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

    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:background="@drawable/urLogiOrTitle" />

    <EditText
        android:id="@+id/editText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/imageView2"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:layout_marginTop="20dp"
        android:linksClickable="false"
        android:maxLength="20"
        android:text="Enter Name" />

    <EditText
        android:id="@+id/editText2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/editText"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:layout_marginTop="20dp"
        android:linksClickable="false"
        android:maxLength="20"
        android:text="Age" />

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="20dp"
        android:text="predict" />

</RelativeLayout>

答案 1 :(得分:0)

将其添加到EditText:

android:textAlignment="center"
android:gravity="center"

答案 2 :(得分:0)

为什么不使用LinearLayout呢? 使用LinearLayout,方向垂直 或者您也可以将它与weightSum标签一起使用