用代码的方式获得屏幕的精确大小尺寸

我使用下面的代码来获得屏幕的大小,但是没有得到正确的值。

Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
    int width = display.getWidth(); 
    int height=display.getHeight();

数据返回平板装置尺寸的大小320 x 480。这个不是正确的值。
我想要的大小尺寸数据值是600 x 1024。

我经常使用这个代码,从来没有报错:

Display display = getWindowManager().getDefaultDisplay(); 
int width = display.getWidth();
int height = display.getHeight();
public static int getScreenWidth(Context context){
    WindowManager windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
    Display display = windowManager.getDefaultDisplay();
    return display.getWidth();
}
public static int getScreenHeight(Context context){
    WindowManager windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
    Display display = windowManager.getDefaultDisplay();
    return display.getHeight();
}

LZ你程序中width的单位是px, 你说的600可能是dp值,可以使用下面的代码来验证一下:

final float scale = context.getResources().getDisplayMetrics().density;

打印出scale来看下,如果scale = 320/600 = 0.5333333的话,说明你所需要的600单位应该是dp。

过期了,这个方法过期了,然后呢?