用xamarin获取屏幕尺寸android

Aar*_*n B 4 c# android xamarin.android xamarin

我想知道是否有人知道在Xamarin中使用c#获取Android屏幕大小的高度和宽度的简单方法.我需要获取屏幕大小,以便我可以在我的一个适配器类中使用它.我尝试过使用显示器和IWindowManager但没有成功.任何帮助或正确方向的一点将非常感激.提前致谢!!

Aar*_*n B 13

对我来说最有效的答案就是使用

var metrics = Resources.DisplayMetrics;
Run Code Online (Sandbox Code Playgroud)

感谢大家的帮助!


小智 5

这是一个代码片段,用于获取有关屏幕的一些信息:

var metrics = new DisplayMetrics();
var windowManager = this.GetSystemService(Context.WindowService) as IWindowManager;
windowManager.DefaultDisplay.GetMetrics(metrics);

var height = metrics.HeightPixels;
var width = metrics.WidthPixels;
var xdpi = metrics.Xdpi;
var ydpi = metrics.Ydpi;
var density = metrics.Density;
Run Code Online (Sandbox Code Playgroud)

我唯一不确定的是 IWindowManager 的外壳是否可以这样做,或者您可能必须做一些更具体的事情。希望它会帮助你。


Sal*_*lro 5

var metrics = Resources.DisplayMetrics;

        height = metrics.HeightPixels;
        width = metrics.WidthPixels;
Run Code Online (Sandbox Code Playgroud)