2011-11-26 33 views
1

我是android开发新手请帮助我解决这个问题。获取显示的宽度和高度将其分配给静态整数

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

这显示错误,所以给我解决方案。

11-26 17:40:17.806:ERROR/AndroidRuntime(422): java.lang.ExceptionInInitializerError

+0

为什么你要使它静态? – freshDroid

+0

你在哪里打电话? – Macarse

+0

我将这个值传递给另一个类。我在活动中编写了这段代码。 –

回答

0

尝试用这种

Display display = getWindowManager().getDefaultDisplay(); 
public static int width = display.getWidth(); 
public static int height = display.getHeight(); 
+0

但是,我想在静态整数值。这对我没有帮助。 –

+0

你可以指定它,只将int变量作为静态。 看到编辑答案 – jazz

+0

这没有帮助。它需要显示为静态。 –

0

你可以试试这个对GET高度宽度和dpi

DisplayMetrics displayMetrics = new DisplayMetrics(); 
     getWindowManager().getDefaultDisplay().getMetrics(displayMetrics); 
     width = displayMetrics.widthPixels; 
     height = displayMetrics.heightPixels; 
     dpi = displayMetrics.densityDpi;