0

这不是我的活动!这是单独的类文件,我正在使用扩展至我的类文件的 Surface 视图。我想在我的画布上显示一个小位图我的位图比我的手机屏幕小所以我createscaledbitmap用这个代码在我的手机屏幕上适合它

  Bitmap  o2 = Bitmap.createScaledBitmap( hud, 800, 490, false);

它在我的手机上效果很好,但是当我在更大的手机上测试时,我的位图只粘贴了屏幕的 3/4 .. 所以我想制作我的位图来修复手机屏幕尺寸

Bitmap  o2 = Bitmap.createScaledBitmap( hud, phonescreenwidth, phonescreenheight, false);

是否有获取手机显示尺寸并在我的代码中使用的功能?喜欢
int phonescreenwidth = surfaceView.getwidth ();

还有一个功能叫 protected void onMeasure (int widthMeasureSpec, int heightMeasureSpec) 我不知道怎么用。如果有人知道,请告诉我如何:)

谢谢你们

4

3 回答 3

1

DisplayMetrics displaymetrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(displaymetrics); int height = displaymetrics.heightPixels; int width = displaymetrics.widthPixels;

参考这里http://developer.android.com/guide/practices/screens_support.html#testing

以像素为单位获取屏幕尺寸

于 2013-10-22T10:39:11.920 回答
1

通过这种方式,您可以获得设备的宽度和高度并将其传递给您的方法..

WindowManager manager = (WindowManager) getApplicationContext().getSystemService(Activity.WINDOW_SERVICE);
    int width, height;
    LayoutParams params;
    if (Build.VERSION.SDK_INT > VERSION_CODES.FROYO) {
        width = manager.getDefaultDisplay().getWidth();
        height = manager.getDefaultDisplay().getHeight();
    } else {
        Point point = new Point();
        manager.getDefaultDisplay().getSize(point);
        width = point.x;
        height = point.y;
    }
于 2013-10-22T10:39:06.683 回答
0

试试这个来获得屏幕尺寸,,

显示显示 = getWindowManager().getDefaultDisplay(); int 宽度 = display.getWidth(); int 高度 = display.getHeight();

然后尝试将上下文从您的 baseActivity 传递到当前活动

然后尝试 context.getWindowManger ....

于 2013-10-22T10:33:31.303 回答