beim starten verschiebt sich alles

C

cranknight

Neues Mitglied
0
Guten Abend
habe folgenendes Problem

ich erstelle mir ein layout wo ich zb Buttons einfüge und positoniere sie dann genau wo ich sie haben will aber sobald ich die App auf mein Handy starte Ist der Button ganz woanders .
Ich denke mal daran das mein Monitor ne andere große hat als der bei eclipse der emulator.

Wie kann ich nun die Buttons fest setzen so das sie bei jedem Handy auf der festgelegten Position sind ?
 
musst schon dein layout auch zeigen. sonst wirds schwer zu wissen, was du falsch machst
 
konnte ich gestern leider nicht posten da ich mit dem handy noch online war aber hier reiche es noch nach :)

Code:
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/hintergrund_startseite"
    android:orientation="vertical" >

      <Button
          android:id="@+id/btn_lk"
          android:layout_width="47dp"
          android:layout_height="wrap_content"
          android:layout_marginLeft="44dp"
          android:layout_marginTop="172dp"
          android:layout_x="102dp"
          android:layout_y="297dp"
          android:background="@drawable/btn_lk"
          android:onClick="ButtonClick"
          android:width="250dp" />

</AbsoluteLayout>
 
wer absolutlayout benutzt, braucht sich nicht wundern.

wenn du die doku liest, wirst du sehen, dass das absolutlayout seit ewigen zeiten deprecated ist und nicht verwendet werden soll.

hier eine pflichtlektüre
Supporting Multiple Screens | Android Developers
 
habe das absolut layout benutzt weil es das einzige war was ich gefunden habe wo man alles frei bewegen kann bin noch relativer anfänger dadrin

Der ursprüngliche Beitrag von 09:32 Uhr wurde um 09:43 Uhr ergänzt:

hmm hmm
sehe gerade dann habe ich alle grafikeinstellungen auch schon falsch gemacht
aber wie rechne ich den "dp" in cm um ?
 
also wie ich das verstehe muss ich für ein typisches handy 320dp haben und 240x320 cm oder pixel haben ?
 
Zuletzt bearbeitet:
Ich weiß nicht, was ein "typisches Handy" sein soll. Mein Rat: Wenn die App für ein bestimmtes Handy ist, nimm ein Lineal und messe dort nach. Ansonsten: Mache keine Annahmen über die Geometrie. (Es gibt nämlich auch quadratische Androiden)

320x240cm wäre sicher nicht typisch, denn Handys mit 4 Meter Diagonale sind eher selten :D:D:D
(und 320x240px ist mittlerweile eher lowend)
 
kann ich denn ein riesiges bild machen und das mit eclipse einstellen das es die werte hat die es sein sollen ?
 
du musst dir wahrscheinlich etwas anderes überlegen.

es gibt über 1000 android geräte und zig verschiedene displays

da wirds schwer mit mm oder px zu arbeiten.
 
wie wird das denn normaler weise gemacht ?
kann ja nicht sein das einer 100 bildergrößen erstellt ....
muss doch irgendwie einstellbar sein das ich das auf anderen handys alles gleich geordnet ist und nix verschoben.... :S
 
Zuletzt bearbeitet:
Man überlässt die Größenanpassung dem Gerät.
Typischerweise nimmt man nur RelativeLayout.
Gegebenenfalls hilft man mit ein Alternativen Resourcen etwas nach.
 
Hi,
Wieso benutzt du nicht ein LinerLayout zum Beispiel und dann nur die Eigenschaften "marginTop", "marginLeft" natürlich immer in dp..!

So wird es auch in den meisten Displays angezeigt. Klar wenn du grosse Werte da benutzt kann es mal vorkommen, dass es ausserhalb des Diplays auftaucht.
Musst halt testen.
Ich würde es in Displays mit Auflösung "240x320", "320x480" und "480x800" testen, wenn deine App nur auf Handys laufen soll. Wenn du noch Tablets usw willst, wirds komplizierter..!

Aber Punkt-Positionierung kannst du vergessen..!
 
achso verstehe
also wenn ich nun linear layout benutzte und "marginTop", "marginLeft" in dp benutze sieht es auf jedem handy gleich aus ?

Der ursprüngliche Beitrag von 23:03 Uhr wurde um 23:04 Uhr ergänzt:

füres tablet ist die app momentan noch nicht geplant
 
cranknight schrieb:
achso verstehe
also wenn ich nun linear layout benutzte und "marginTop", "marginLeft" in dp benutze sieht es auf jedem handy gleich aus ?

Der ursprüngliche Beitrag von 23:03 Uhr wurde um 23:04 Uhr ergänzt:

füres tablet ist die app momentan noch nicht geplant

Naja 100 prozentig natürlich nicht, aber schon gleich genug.
Kannst ja dein Beispiel mit dem Button in vers. Emulatoren ausprobieren und selber feststellen wie es aussehen wird. Aber wie hier schon gesagt wurde ist es nicht besonders schlau mit pixeln zu arbeiten, vorallem da auch die Display-Dichte eine Rolle spielt..!
 

Ähnliche Themen

Laser5001
  • Laser5001
Antworten
2
Aufrufe
870
Laser5001
Laser5001
S
  • Sempervivum
Antworten
2
Aufrufe
593
Sempervivum
S
Hansimglueck0815
Antworten
0
Aufrufe
720
Hansimglueck0815
Hansimglueck0815
Zurück
Oben Unten