在没有 Activity 参数的情况下获取屏幕的长宽

来源:互联网 发布:mac访问windows文件夹 编辑:程序博客网 时间:2024/06/16 02:37

进行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的时候,第一种方法已经被废除了,建议采用第二种方法

0 0
原创粉丝点击