Ciaran
Ciaran

Reputation: 695

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 = ;

  }
 } 

Upvotes: 5

Views: 3258

Answers (1)

Phuc Tran
Phuc Tran

Reputation: 8093

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;
    }

Upvotes: 12

Related Questions