进行Android编程时,很多时候都需要获取当前屏幕的宽度与高度,但是当我们需要在别的类中调用屏幕宽高时,直接用原来的方法是不行的,下面我来介绍如何在任意类中调用宽度高度的两种方法。
public void getScreenHW(Context context){ WindowManager manager = (WindowManager)context.getSystemService(Context.WINDOW_SERVICE); Display display = manager.getDefaultDisplay(); int width =display.getWidth(); int height=display.getHeight(); Log.d("width", String.valueOf(width)); Log.d("height", String.valueOf(height)); //第一种 DisplayMetrics dm=new DisplayMetrics(); manager.getDefaultDisplay().getMetrics(dm); int width2=dm.widthPixels; int height2=dm.heightPixels; Log.d("width2", String.valueOf(width2)); Log.d("height2", String.valueOf(height2)); //第二种 }
需要注意的时,当我的targetSdkVersion是17 也就是4.2.2的时候,第一种方法已经被废除了,建议采用第二种方法