Abrufen der tatsächlichen Bildschirmhöhe (Android)

8

Ich möchte die tatsächliche Bildschirmhöhe des Geräts abrufen, auf dem meine App ausgeführt wird. Um dies zu erreichen, versuche ich Folgendes:

%Vor%

Das Gerät, das ich mit dem Emulator verwende, hat eine Bildschirmbreite von 1080 Pixeln und eine Bildschirmhöhe von 1920 Pixeln. Die Breite wird korrekt angezeigt (1080 Pixel) aber die Höhe beträgt laut App nur 1776 Pixel. Was muss ich tun, damit meine App die richtige Bildschirmhöhe anzeigt? Ist metrics.heightPixels eine schlechte Methode, um die Bildschirmhöhe zu erhalten?

    
Taegos 03.03.2016, 19:12
quelle

3 Antworten

21

Siehe diese Antwort

Wenn Ihre API-Ebene & gt; 13 versuche dies, wenn du aktiv bist

%Vor%

Wenn Sie nicht in einer Aktivität sind, können Sie die Standardanzeige über WINDOW_SERVICE erhalten:

%Vor%

getWidth und getHeight ist für API-Ebene 13 oder weniger

AKTUALISIEREN

Für API 17 und höher gibt Display.getRealSize() die volle Bildschirmgröße zurück, wie bereits erwähnt in der Dokumentation :

  

Ruft die tatsächliche Größe der Anzeige ab   ohne irgendein Fensterdekor zu subtrahieren oder irgendeine Kompatibilität anzuwenden   Maßstabsfaktoren.

     

Die Größe wird basierend auf der aktuellen Drehung des Displays angepasst.

     

Die tatsächliche Größe ist möglicherweise kleiner als die physische Größe des Bildschirms   Der Fenstermanager emuliert eine kleinere Anzeige (mit adb shell am   Display-Größe).

    
Rosario Vivas 03.03.2016, 19:24
quelle
4
%Vor%     
Makvin 18.07.2017 06:11
quelle
3

Ich musste die tatsächliche verfügbare Höhe erreichen, und von all den Optionen ist das die einzige Sache, die für mich funktioniert hat.

Erstellen Sie ein Rechteck und erhalten Sie seine Abmessungen:

%Vor%

Dabei ist activityRootView die Stammansicht Ihres Layouts.

Wenn Sie die Werkzeugleistenhöhe extrahieren müssen:

%Vor%

Dabei ist toolbar Ihre Symbolleistenansicht.

availableScreenHeight wird jetzt ohne die Statusleiste, ohne die Symbolleiste und ohne die Navigationsleiste (wenn das Gerät es verwendet).

    
lenooh 20.07.2017 11:24
quelle

Tags und Links