如何在应用程序类中获取屏幕显示指标

Luk*_*kap 22 android metrics

如果我把它放在一些活动类中它可以很好地工作,但是,当我把它放在我的App类中时,getWindowManager()找不到该方法.有没有办法在应用程序类中获取WindowManager?

我的app类定义如下:

public class myApp extends Application {
Run Code Online (Sandbox Code Playgroud)

在创建方法我有这个:

DisplayMetrics dm = new DisplayMetrics(); 
getWindowManager().getDefaultDisplay().getMetrics(dm); 
int width = dm.widthPixels;
Run Code Online (Sandbox Code Playgroud)

Dmy*_*lyk 63

这里,Context.getResource()

DisplayMetrics dm = getResources().getDisplayMetrics(); 
int densityDpi = dm.densityDpi;
Run Code Online (Sandbox Code Playgroud)


hit*_*man 11

You can also try this:

WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
final DisplayMetrics displayMetrics = new DisplayMetrics();
wm.getDefaultDisplay().getMetrics(displayMetrics);
int height = displayMetrics.heightPixels;
int width = displayMetrics.widthPixels;
Run Code Online (Sandbox Code Playgroud)