Android: Get screen dimensions in pixels

If you want the display dimensions in pixels you can use getSize:
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
int width = size.x;
int height = size.y;
If you’re not in an Activity you can get the default Display via WINDOW_SERVICE:
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Before getSize was introduced (in API level 13), you could use the getWidth and getHeightmethods that are now deprecated:
Display display = getWindowManager().getDefaultDisplay(); 
int width = display.getWidth(); // deprecated
int height = display.getHeight(); // deprecated
For the use case you’re describing however, a margin/padding in the layout seems more appropriate.
Another ways is: DisplayMetrics
A structure describing general information about a display, such as its size, density, and font scaling. To access the DisplayMetrics members, initialize an object like this:
DisplayMetrics metrics = new DisplayMetrics();
We can use widthPixels to get information for:
«The absolute width of the display in pixels.»
Log.d("ApplicationTagName", "Display width in px is " + metrics.widthPixels);

Leave a Comment