Android Studio - 不同的设备屏幕布局

时间:2015-10-08 14:00:53

标签: android android-layout

我很痛苦!!!

使用最新版本的Android Studio,我正在开发一款应用程序,并在设备上使用屏幕布局。

例如,在Nexus 5上运行,TextView,ImageView和Buttons的屏幕和位置非常完美。但是在Galaxy S5上运行时看起来不一样,这些物体与Nexus 5不在同一个地方。

我尝试根据密度进行布局 - 为hdpi,xhdpi,xxhdpi,xxxhdpi创建屏幕 - 或者基于尺寸 - 屏幕显示正常,大和x大,但没有任何效果如预期。

在任何一种情况下,从Nexus 5调用相同的屏幕布局(例如xxhdpi),如Galaxy S5,但布局不同。

我做错了什么或监督?

编辑:

只是为了说清楚。 enter image description here

这是我想要开发的屏幕。它上面有8个TextView(白色空格),下部有两个按钮。

根据Android设备的不同,文本位于空白区域的上方或下方。

这是我正在使用的XML。

<?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"
    android:background="#888888">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/imageView5"
        android:background="@drawable/registro"
        android:scaleType="fitXY" />

    <EditText
        android:layout_width="210dp"
        android:layout_height="40dp"
        android:id="@+id/tfUsername"
        android:layout_marginTop="132dp"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:background="#00000000"
        android:hint="USUARIO"
        android:gravity="center|center_vertical"
        android:fontFamily="sans-serif-condensed"
        android:capitalize="characters"
        android:textSize="17dp"
        android:textStyle="bold"
        android:singleLine="true"
        android:enabled="true" />

    <EditText
        android:layout_width="210dp"
        android:layout_height="40dp"
        android:id="@+id/tfPassword"
        android:background="#00000000"
        android:hint="CONTRASEÑA"
        android:gravity="center|center_vertical"
        android:fontFamily="sans-serif-condensed"
        android:textStyle="bold"
        android:capitalize="characters"
        android:textSize="17dp"
        android:layout_below="@+id/tfUsername"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="17dp"
        android:singleLine="true"
        android:inputType="textPassword" />

    <EditText
        android:layout_width="210dp"
        android:layout_height="40dp"
        android:textSize="17dp"
        android:inputType="textPassword"
        android:ems="10"
        android:id="@+id/tfConfirmPassword"
        android:background="#00000000"
        android:fontFamily="sans-serif-condensed"
        android:textStyle="bold"
        android:layout_below="@+id/tfPassword"
        android:layout_alignRight="@+id/tfPassword"
        android:layout_alignEnd="@+id/tfPassword"
        android:layout_alignLeft="@+id/tfPassword"
        android:layout_alignStart="@+id/tfPassword"
        android:layout_marginTop="17dp"
        android:hint="CONFIRMAR CONTRASEÑA"
        android:gravity="center|center_vertical"
        android:singleLine="true" />

    <EditText
        android:layout_width="210dp"
        android:layout_height="40dp"
        android:id="@+id/tfMail"
        android:background="#00000000"
        android:hint="CORREO ELECTRONICO"
        android:gravity="center|center_vertical"
        android:fontFamily="sans-serif-condensed"
        android:textStyle="bold"
        android:capitalize="characters"
        android:textSize="17dp"
        android:layout_below="@+id/tfConfirmPassword"
        android:inputType="textEmailAddress"
        android:layout_alignLeft="@+id/tfConfirmPassword"
        android:layout_alignStart="@+id/tfConfirmPassword"
        android:layout_alignRight="@+id/tfConfirmMail"
        android:layout_alignEnd="@+id/tfConfirmMail"
        android:layout_marginTop="16dp"
        android:singleLine="true" />

    <EditText
        android:layout_width="210dp"
        android:layout_height="40dp"
        android:id="@+id/tfConfirmMail"
        android:background="#00000000"
        android:hint="CONFIRMAR CORREO "
        android:gravity="center|center_vertical"
        android:fontFamily="sans-serif-condensed"
        android:textStyle="bold"
        android:capitalize="characters"
        android:textSize="17dp"
        android:layout_below="@+id/tfMail"
        android:inputType="textEmailAddress"
        android:layout_alignLeft="@+id/tfConfirmPassword"
        android:layout_alignStart="@+id/tfConfirmPassword"
        android:layout_alignRight="@+id/tfConfirmPassword"
        android:layout_alignEnd="@+id/tfConfirmPassword"
        android:layout_marginTop="15dp"
        android:singleLine="true" />

    <EditText
        android:layout_width="100dp"
        android:layout_height="40dp"
        android:id="@+id/tfMonth"
        android:background="#00000000"
        android:hint="MM"
        android:gravity="center|center_vertical"
        android:fontFamily="sans-serif-condensed"
        android:textStyle="bold"
        android:capitalize="characters"
        android:textSize="17dp"
        android:layout_alignTop="@+id/tfDay"
        android:layout_centerHorizontal="true"
        android:singleLine="true" />

    <EditText
        android:layout_width="100dp"
        android:layout_height="40dp"
        android:id="@+id/tfYear"
        android:background="#00000000"
        android:hint="AAAA"
        android:gravity="center|center_vertical"
        android:fontFamily="sans-serif-condensed"
        android:textStyle="bold"
        android:capitalize="characters"
        android:textSize="17dp"
        android:layout_alignTop="@+id/tfMonth"
        android:layout_alignRight="@+id/tfConfirmMail"
        android:layout_alignEnd="@+id/tfConfirmMail"
        android:singleLine="true"
        android:layout_marginRight="15dp"
        android:layout_toRightOf="@+id/tfMonth"
        android:layout_toEndOf="@+id/tfMonth" />

    <EditText
        android:layout_width="100dp"
        android:layout_height="40dp"
        android:id="@+id/tfDay"
        android:background="#00000000"
        android:hint="DD"
        android:gravity="center|center_vertical"
        android:fontFamily="sans-serif-condensed"
        android:textStyle="bold"
        android:capitalize="characters"
        android:textSize="17dp"
        android:layout_marginBottom="80dp"
        android:layout_above="@+id/btnSignUp"
        android:layout_toLeftOf="@+id/tfMonth"
        android:layout_alignLeft="@+id/tfConfirmMail"
        android:layout_alignStart="@+id/tfConfirmMail"
        android:singleLine="true"
        android:layout_marginLeft="15dp" />

    <Button
        android:layout_width="200dp"
        android:layout_height="60dp"
        android:id="@+id/btnSignUp"
        android:background="#00000000"
        android:onClick="selSignUp"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true" />

    <ImageButton
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:id="@+id/btnBirthday"
        android:background="#00000000"
        android:onClick="showDate"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignBottom="@+id/tfMonth"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_marginBottom="0dp" />

    <ImageButton
        android:layout_width="260dp"
        android:layout_height="50dp"
        android:id="@+id/btnTerminos"
        android:layout_above="@+id/btnSignUp"
        android:layout_centerHorizontal="true"
        android:background="#00000000" />

</RelativeLayout>

0 个答案:

没有答案