das ist eine wirklich einfache Frage, auf die ich keine Antwort gefunden habe:/ Wie kann ich schnell auf die Bildschirmauflösung (Breite, Höhe) als ganzzahlige Werte zugreifen?Android: Holen Sie sich die Bildschirmauflösung/Pixel als ganzzahlige Werte
Ich habe diese eine versucht, aber es zeigt immer Null auf meinem Emulator:
DisplayMetrics dm = new DisplayMetrics();
int width = dm.widthPixels/2;
In meinem Fall möchte ich eine Tabelle mit TableRows dynamisch erstellen, die jeweils zwei Spalten. Diese Spalte soll die Hälfte des Bildschirms in der Breite ausfüllen.
Kann mir jemand einen Tipp geben?
nur eine Vermutung, die - Die von DisplayMetrics abgerufenen Werte sind möglicherweise nicht gültig bis zum ersten Zeichnen. überprüfen Sie dies auf onCreate oder onDraw oder wann? – SteelBytes
Der wirkliche Grund, warum das Ergebnis Null war, ist, weil Null der Standardwert in Java für einen Int ist. 'dm.widthPixels' wurde nicht initialisiert, also ist der Wert Null und Null geteilt durch zwei ist auch Null ... Sie sollten etwas wie' mView.getContext(). getResources(). getDisplayMetrics() ' – Armin