Получите ширину и высоту экрана с точки зрения DP с хорошим оформлением:
Шаг 1: Создание интерфейса
public interface ScreenInterface {
float getWidth();
float getHeight();
}
Шаг 2: Создание класса реализатора
public class Screen implements ScreenInterface {
private Activity activity;
public Screen(Activity activity) {
this.activity = activity;
}
private DisplayMetrics getScreenDimension(Activity activity) {
DisplayMetrics displayMetrics = new DisplayMetrics();
activity.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
return displayMetrics;
}
private float getScreenDensity(Activity activity) {
return activity.getResources().getDisplayMetrics().density;
}
@Override
public float getWidth() {
DisplayMetrics displayMetrics = getScreenDimension(activity);
return displayMetrics.widthPixels / getScreenDensity(activity);
}
@Override
public float getHeight() {
DisplayMetrics displayMetrics = getScreenDimension(activity);
return displayMetrics.heightPixels / getScreenDensity(activity);
}
}
Шаг 3: Получить ширину и высоту в активности:
Screen screen = new Screen(this); // Setting Screen
screen.getWidth();
screen.getHeight();