Freigeben über


Display.GetRealMetrics(DisplayMetrics) Methode

Definition

Ruft die Größe des größten Bereichs der Anzeige, auf den eine App im aktuellen Systemzustand zugegriffen werden kann, ohne fensterdekorieren oder Skalierungsfaktoren anzuwenden.

[Android.Runtime.Register("getRealMetrics", "(Landroid/util/DisplayMetrics;)V", "GetGetRealMetrics_Landroid_util_DisplayMetrics_Handler")]
public virtual void GetRealMetrics (Android.Util.DisplayMetrics? outMetrics);
[<Android.Runtime.Register("getRealMetrics", "(Landroid/util/DisplayMetrics;)V", "GetGetRealMetrics_Landroid_util_DisplayMetrics_Handler")>]
abstract member GetRealMetrics : Android.Util.DisplayMetrics -> unit
override this.GetRealMetrics : Android.Util.DisplayMetrics -> unit

Parameter

outMetrics
DisplayMetrics

Ein DisplayMetrics Objekt, das die Metriken empfängt.

Attribute

Hinweise

Ruft die Größe des größten Bereichs der Anzeige, auf den eine App im aktuellen Systemzustand zugegriffen werden kann, ohne fensterdekorieren oder Skalierungsfaktoren anzuwenden.

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

Die zurückgegebene Größe fällt in eines der folgenden Szenarien: <ol><li>Das Gerät hat keine Partitionen auf dem Display. Der zurückgegebene Wert ist der größte Bereich der Anzeige, auf den eine App im aktuellen Systemzustand zugreifen kann, unabhängig vom Fenstermodus.</li li><>Das Gerät teilt eine einzelne Anzeige in mehrere Partitionen auf. Eine Anwendung ist auf einen Teil der Anzeige beschränkt. Dies ist bei Geräten üblich, auf denen sich die Größe der Anzeige ändert, z. B. faltbare Bildschirme oder große Bildschirme. Die zurückgegebene Größe entspricht dem Teil der Anzeige, auf den die Anwendung beschränkt ist.</li li><>Der Fenster-Manager emuliert eine andere Anzeigegröße unter Verwendung von .adb shell wm size Die zurückgegebene Größe entspricht der emulierten Anzeigegröße.</li></ol></p>

Der zurückgegebene Wert eignet <sich nicht>für die Größenanpassung und das Platzieren von UI-Elementen</b>, da er die Größe des Anwendungsfensters in keinem dieser Szenarien widerspiegelt. WindowManager#getCurrentWindowMetrics() ist eine Alternative, die die Größe des aktuellen Anwendungsfensters zurückgibt, auch wenn sich das Fenster auf einem Gerät mit einer partitionierten Anzeige befindet. Dadurch können UI-Fehler verhindert werden, bei denen UI-Elemente falsch ausgerichtet oder über die Grenzen des Fensters hinaus platziert werden.

Die ordnungsgemäße Behandlung des Mehrfenstermodus ist erforderlich, da Anwendungen nicht immer vollbildig sind. Ein Benutzer auf einem großen Bildschirmgerät, z. B. einem Tablet oder ChromeOS-Geräten, verwendet wahrscheinlicher multifensterbasierte Modi.

Betrachten Sie beispielsweise ein Gerät mit einer Anzeige, die in zwei Hälften unterteilt ist. Der Benutzer hat möglicherweise eine Vollbildanwendung auf der ersten Partition geöffnet. Sie können zwei Anwendungen in geteilten Bildschirmen (ein Beispiel für den Multi-Window-Modus) auf der zweiten Partition geöffnet haben, wobei jede Anwendung die Hälfte der Partition verbraucht. In diesem Fall meldet, WindowManager#getCurrentWindowMetrics() dass das Vollbildfenster die Hälfte des Bildschirms hat, und jedes Geteilte Bildschirmfenster ist ein Viertel des Bildschirms in der Größe. #getRealMetrics Dagegen meldet die Hälfte der Bildschirmgröße für alle Fenster, da die Anwendungsfenster alle auf ihre jeweiligen Partitionen beschränkt sind. </p>

Dieses Mitglied ist veraltet. Wird verwendet WindowManager#getCurrentWindowMetrics() , um die aktuelle Größe des Aktivitätsfensters zu identifizieren. Ui-bezogene Arbeit, z. B. die Auswahl von UI-Layouts, sollte darauf WindowMetrics#getBounds()basieren. Wird verwendet Configuration#densityDpi , um die aktuelle Dichte zu erhalten.

Java-Dokumentation für android.view.Display.getRealMetrics(android.util.DisplayMetrics).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: