获得安卓屏幕分辨率

本文关键字:屏幕 分辨率 | 更新日期: 2023-09-27 18:33:46

我需要代码才能在 API 10+ 中获取 android 屏幕分辨率

我正在使用单机安卓

using Android.App;
_ScreenWidth = Resources.DisplayMetrics.WidthPixels;

这段代码只适用于Actvity1.cs而不是Game1.cs,这是为什么?我using Android.App;声明...

    protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);
        ScreenWidth = Resources.DisplayMetrics.WidthPixels;
        Game1.Activity = this;
        var g = new Game1();
        SetContentView(g.Window);
        g.Run();
    }

获得安卓屏幕分辨率

[已编辑] 尝试使用它。

import android.util.DisplayMetrics;
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int screen_width    = metrics.widthPixels;
int screen_height   = metrics.heightPixels;
float density       = metrics.density;

或者像这样

import android.util.DisplayMetrics;
public class Resolution()
{
int screen_width;
int screen_height;
float density;
public Resolution(Activity activity)
{
    DisplayMetrics metrics = new DisplayMetrics();
    activity.getWindowManager().getDefaultDisplay().getMetrics(metrics);
    screen_width    = metrics.widthPixels;
    screen_height   = metrics.heightPixels;
    density         = metrics.density;
}
}

并在您的活动类中

public class MainActivity extends Activity
{
    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        Resolution res = new Resolution(this); //your activity in param
        int width = res.screen_width;
        int height = res.screen_height;
    }
}