繁体   English   中英

获取android屏幕分辨率

[英]Get android screen resolution

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

我正在使用monogame android

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

这段代码仅在Actvity1.csActvity1.cs ,而在Game1.csGame1.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;

    }
}

你可以试试看

int measuredWidth = 0;
int measuredHeight = 0;
Point size = new Point();
WindowManager w = getWindowManager();

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR2)
{
    w.getDefaultDisplay().getSize(size);

    measuredWidth = size.x;
    measuredHeight = size.y;
}
else
{
    Display d = w.getDefaultDisplay();
    measuredWidth = d.getWidth();
    measuredHeight = d.getHeight();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM