底辺SE奮闘記

年収300万SEブログ

【Xamarin.Forms】端末のディスプレイサイズを取得する

意外と需要はあると思います。

環境

  • VisualStudio for Mac 8.0.8
  • Xamarin.Forms 3.3.0.912540

解法

取得位置には注意が必要です。 私の環境では、iPhone8Plusのシミュレータのみ、ContentPageクラスのコンストラクタ内で実行するとNullExceptionになりました。

また、取得できる数値単位はピクセルではなくポイントだという点も注意が必要です。

protected override void OnAppearing()
{
    var w = Application.Current.MainPage.Width;
    var h = Application.Current.MainPage.Height;
}