I want to get Android device's screen size. I'm using these 3 codes to do this but these are giving me the activity's size; which is without the size of the status bars height. On tablet with 800px height, this code gives 764px. 36px goes to status bar on the bottom.
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
final int width = size.x;
final int height = size.y;
Rect rectgle= new Rect();
Window window= getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(rectgle);
int height2= rectgle.bottom;
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int actualHeight = metrics.heightPixels;
But I need a code which gives me the actual size of the screen. Not the activity's. can anyone help me about this? Thank you.
Simple, use relative layout with the set margin code. Set the margins between each text view, button, etc and it will look the same on every phone. android:layout_marginTop="10dp" // change Top to Bottom, Left or Right for what you need.
Fullscreen (or full screen) refers to the 4:3 (1. 33:1) aspect ratio of early standard television screens and computer monitors. The 4:3 aspect ratio became the standard in film because it mirrored film stock and was the easiest to use. Widescreen ratios started to become more popular in the 1990s and 2000s.
For API Level 17 and above you can use getRealSize()
https://developer.android.com/reference/android/view/Display.html#getRealSize(android.graphics.Point)
This snippet will give you height of your status bar.
Rect rectgle= new Rect();
Window window= getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(rectgle);
int StatusBarHeight= rectgle.top;
int contentViewTop=
window.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int TitleBarHeight= contentViewTop - StatusBarHeight;
So the total height of screen is :-
height = height+TitleBarHeight;
original answer is here. Also note this will not work in onCreate put that code in runnable.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With