android mit Margen über mehrere Bildschirmgrößen

Hallo ich habe eine app erstellt, ich will laufen über mehrere Bildschirme hinweg. ich baute die ganze Sache am HDPi. und wenn ich es auf eine neuere android-Handy mit einem größeren Bildschirm die Ausrichtung der Sachen ist raus. Ich weiß, das ist, weil ich die Ränder zu positionieren, Dinge mit DP.

Meine Frage ist, was ist die best practices für die Verwendung von Margen über mehrere Bildschirmgrößen und/oder gibt es einige Codes, die ich einstellen kann, dass kann dividieren/multiplizieren Sie die DP basiert auf der Display-Größe?

Ich bin zu wollen, um die app auf vielen Geräten wie möglich. aber dies ist meine erste app so nicht ganz sicher, wie dies zu tun. Also jede Hilfe wäre sehr geschätzt werden.

heres ein Beispiel von meinem layout

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="20dip"
    android:background="@drawable/bg_tablecell"
    android:orientation="horizontal"
    android:weightSum="1"
     >

       <TextView
        android:id="@+id/position"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_centerVertical="true"
        android:paddingLeft="4dip"
        android:text="@string/POS"
        android:textSize="15dip"
        android:textColor="@color/blue"
         />

    <TextView
        android:id="@+id/TeamName"
        android:layout_width="90dip"
        android:layout_height="wrap_content"
        android:layout_marginLeft="23dip"
        android:ellipsize="end"
        android:gravity="left"
        android:lines="1"
        android:text="@string/Team"
        android:textColor="@color/blue"
        android:textSize="15dip"
        android:textStyle="bold" 
        android:layout_centerVertical="true"/>

    <TextView
        android:id="@+id/played"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/TeamName"
        android:layout_alignBottom="@+id/TeamName"
        android:layout_marginLeft="35dip"
        android:layout_toRightOf="@+id/TeamName"
        android:gravity="center"
        android:text="@string/Zero"
        android:textColor="@color/blue"
        android:textSize="10dip" 
        android:layout_centerVertical="true"/>

    <TextView
        android:id="@+id/won"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/played"
        android:layout_alignBottom="@+id/played"
        android:layout_marginLeft="17dip"
        android:layout_toRightOf="@+id/played"
        android:gravity="center"
        android:text="@string/Zero"
        android:textColor="@color/blue"
        android:textSize="10dip" 
        android:layout_centerVertical="true"/>

    <TextView
        android:id="@+id/drawn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/won"
        android:layout_alignBottom="@+id/won"
        android:layout_marginLeft="16dip"
        android:layout_toRightOf="@+id/won"
        android:gravity="center"
        android:text="@string/Zero"
        android:textColor="@color/blue"
        android:textSize="10dip" 
        android:layout_centerVertical="true"/>

    <TextView
        android:id="@+id/lost"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/drawn"
        android:layout_alignBottom="@+id/drawn"
        android:layout_marginLeft="16dip"
        android:layout_toRightOf="@+id/drawn"
        android:gravity="center"
        android:text="@string/Zero"
        android:textColor="@color/blue"
        android:textSize="10dip" 
        android:layout_centerVertical="true"/>

    <TextView
        android:id="@+id/goalsFor"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/lost"
        android:layout_alignBottom="@+id/lost"
        android:layout_marginLeft="16dip"
        android:layout_toRightOf="@+id/lost"
        android:gravity="center"
       android:text="@string/Zero"
        android:textColor="@color/blue"
        android:textSize="10dip" 
        android:layout_centerVertical="true"/>

    <TextView
        android:id="@+id/goalsAgainst"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/goalsFor"
        android:layout_alignBottom="@+id/goalsFor"
        android:layout_marginLeft="17dip"
        android:layout_toRightOf="@+id/goalsFor"
        android:gravity="center"
        android:text="@string/Zero"
        android:textColor="@color/blue"
        android:textSize="10dip" 
        android:layout_centerVertical="true"/>

    <TextView
        android:id="@+id/Difference"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/goalsAgainst"
        android:layout_alignBottom="@+id/goalsAgainst"
        android:layout_marginLeft="15dip"
        android:layout_toRightOf="@+id/goalsAgainst"
        android:gravity="center"
        android:text="@string/Zero"
        android:textColor="@color/blue"
        android:textSize="10dip" 
        android:layout_centerVertical="true"/>

    <TextView
        android:id="@+id/points"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/Difference"
        android:layout_alignBottom="@+id/Difference"
        android:layout_marginLeft="18dip"
        android:layout_toRightOf="@+id/Difference"
        android:gravity="center"
        android:text="@string/Zero"
        android:textColor="@color/blue"
        android:textSize="10dip" 
        android:layout_centerVertical="true"/>

hdpi-Bildschirme

android mit Margen über mehrere Bildschirmgrößen

xhdpi Bildschirme

android mit Margen über mehrere Bildschirmgrößen

InformationsquelleAutor Luke Batley | 2012-07-24

Schreibe einen Kommentar