Phill Phill - 3 months ago 10
Android Question

Android: How to find width and height of screen?

I am trying to find the width and height of the screen but none of the ways I have tried will work in the class I created, my code is below.

Does anyone know how to find it? I cannot use the way I am trying below because .getWidth() is deprecated?

public class Crate {

public int acrossCrate;
public int upDownCrate;
Context theContext;

WindowManager wm = (WindowManager)theContext.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
int width = display.getWidth();


public Crate() {
acrossCrate = 650;
upDownCrate = 650;
//int width = ;
//int height = ;

}
}

Answer

Use below code

private int getScreenHeight(Context context) {
        int height;

        if (android.os.Build.VERSION.SDK_INT >= 13) {
            WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
            Display display = wm.getDefaultDisplay();
            Point size = new Point();
            display.getSize(size);
            height = size.y;
        } else {
            WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
            Display display = wm.getDefaultDisplay();
            height = display.getHeight();  // deprecated
        }

        return height;
    }
Comments