Display.GetRealMetrics(DisplayMetrics) Método

Definição

Obtém o tamanho da maior região da exibição acessível a um aplicativo no estado atual do sistema, sem subtrair qualquer decoração de janela ou aplicar fatores de dimensionamento.

[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

Parâmetros

outMetrics
DisplayMetrics

Um DisplayMetrics objeto para receber as métricas.

Atributos

Comentários

Obtém o tamanho da maior região da exibição acessível a um aplicativo no estado atual do sistema, sem subtrair qualquer decoração de janela ou aplicar fatores de dimensionamento.

O tamanho é ajustado com base na rotação atual da exibição.

O tamanho retornado se enquadrará em um destes cenários: <ol><li>O dispositivo não tem partições na exibição. O valor retornado é a maior região da exibição acessível a um aplicativo no estado atual do sistema, independentemente do modo de janela.</li><li>O dispositivo divide uma única exibição em várias partições. Um aplicativo é restrito a uma parte da exibição. Isso é comum em dispositivos em que a exibição muda de tamanho, como dobrantes ou telas grandes. O tamanho retornado corresponderá à parte da exibição à qual o aplicativo está restrito.</li><li>O gerenciador de janelas está emulando um tamanho de exibição diferente, usando adb shell wm size. O tamanho retornado corresponderá ao tamanho de exibição emulado.</li></ol></p>

O valor retornado é <b>inadequado para usar ao dimensionar e colocar elementos< de interface do usuário/b>, pois não reflete o tamanho da janela do aplicativo em nenhum desses cenários. WindowManager#getCurrentWindowMetrics() é uma alternativa que retorna o tamanho da janela atual do aplicativo, mesmo que a janela esteja em um dispositivo com uma exibição particionada. Isso ajuda a evitar bugs de interface do usuário em que os elementos da interface do usuário são desalinhados ou colocados além dos limites da janela.

Manipular o modo de várias janelas corretamente é necessário, pois os aplicativos nem sempre são de tela inteira. Um usuário em um dispositivo de tela grande, como um tablet ou dispositivos ChromeOS, é mais provável que use modos de várias janelas.

Por exemplo, considere um dispositivo com uma exibição particionada em duas metades. O usuário pode ter um aplicativo de tela inteira aberto na primeira partição. Eles podem ter dois aplicativos abertos na tela dividida (um exemplo de modo de várias janelas) na segunda partição, com cada aplicativo consumindo metade da partição. Nesse caso, WindowManager#getCurrentWindowMetrics() relata que a janela de tela inteira tem metade da tela em tamanho e cada janela de tela dividida é um quarto da tela em tamanho. Por outro lado, #getRealMetrics relata metade do tamanho da tela para todas as janelas, já que as janelas do aplicativo são restritas às respectivas partições. </p>

Este membro foi preterido. Use WindowManager#getCurrentWindowMetrics() para identificar o tamanho atual da janela de atividade. O trabalho relacionado à interface do usuário, como escolher layouts de interface do usuário, deve depender WindowMetrics#getBounds(). Use Configuration#densityDpi para obter a densidade atual.

Java documentação para android.view.Display.getRealMetrics(android.util.DisplayMetrics).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.

Aplica-se a