Dieses Bild zeigt beide Orientierungen (Landschaft / Hochformat)
Lesen Sie weiter, um MaxX und MaxY zu erhalten.
Für Bildschirmkoordinaten von Android-Geräten funktioniert das folgende Konzept.
Display mdisp = getWindowManager().getDefaultDisplay();
Point mdispSize = new Point();
mdisp.getSize(mdispSize);
int maxX = mdispSize.x;
int maxY = mdispSize.y;
BEARBEITEN: - ** ** für Geräte, die Android API Level älter als 13 unterstützen. Kann den folgenden Code verwenden.
Display mdisp = getWindowManager().getDefaultDisplay();
int maxX= mdisp.getWidth();
int maxY= mdisp.getHeight();
(x, y): -
1) (0,0) ist die obere linke Ecke.
2) (maxX, 0) ist die obere rechte Ecke
3) (0, maxY) ist die untere linke Ecke
4) (maxX, maxY) ist die untere rechte Ecke
Hier sind maxX und maxY die maximale Höhe und Breite des Bildschirms in Pixel, die wir im oben angegebenen Code abgerufen haben.
View
mit haben,layout_width="1" layout_height="1"
würde es bedeuten, dass oben links (0,0) und unten rechts (1, 1) ist? Würde das nicht bedeuten, dassView
die Breite = 2 und die Höhe = 2 ist? Widerspruch.Für Android API Level 13 und Sie müssen dies verwenden:
Dann ist (0,0) die obere linke Ecke und (maxX, maxY) die untere rechte Ecke des Bildschirms.
Das 'getWidth ()' für die Bildschirmgröße ist seit API 13 veraltet
Darüber hinaus sind getwidth () und getHeight () Methoden der android.view.View- Klasse in android.So Wenn Ihre Java-Klasse die View-Klasse erweitert, gibt es keine windowManager-Overheads.
so einfach ist das.
quelle
Dieses Bild wird hoffentlich die Verwirrung aller beseitigen, die von dort gesammelt wird .
quelle