public ScreenProperties GetProperties()
        {
            var di         = DisplayInformation.GetForCurrentView();
            var properties = new ScreenProperties
            {
                Density = di.RawPixelsPerViewPixel
            };

            if (ApiInformation.IsPropertyPresent(typeof(DisplayInformation).FullName, nameof(DisplayInformation.ScreenWidthInRawPixels)))
            {
                properties.PixelWidth  = (int)di.ScreenWidthInRawPixels;
                properties.PixelHeight = (int)di.ScreenHeightInRawPixels;
            }
            return(properties);
        }
Ejemplo n.º 2
0
        public static ScreenProperties GetProperties()
        {
#if WINDOWS_UWP
            var di         = DisplayInformation.GetForCurrentView();
            var properties = new ScreenProperties
            {
                Density = di.RawPixelsPerViewPixel
            };
            if (ApiInformation.IsPropertyPresent(typeof(DisplayInformation).FullName, nameof(DisplayInformation.ScreenWidthInRawPixels)))
            {
                properties.PixelWidth  = (int)di.ScreenWidthInRawPixels;
                properties.PixelHeight = (int)di.ScreenHeightInRawPixels;
            }
            return(properties);
#elif __ANDROID__
            var wm = Application.Context.GetSystemService(Context.WindowService).JavaCast <IWindowManager>();
            var dm = new DisplayMetrics();
            wm.DefaultDisplay.GetMetrics(dm);
            return(new ScreenProperties
            {
                Density = dm.Density,
                PixelWidth = dm.WidthPixels,
                PixelHeight = dm.HeightPixels,
            });
#elif __IOS__
            var scale      = UIScreen.MainScreen.Scale;
            var scaledSize = UIScreen.MainScreen.Bounds;
            return(new ScreenProperties
            {
                Density = scale,
                PixelWidth = (int)(scaledSize.Width * scale),
                PixelHeight = (int)(scaledSize.Height * scale),
            });
#else
            throw new PlatformNotSupportedException();
#endif
        }