รับความกว้างและความสูงของหน้าจอในแง่ของ DP ด้วยการตกแต่งที่ดี:
ขั้นตอนที่ 1: สร้างอินเตอร์เฟส
public interface ScreenInterface {
float getWidth();
float getHeight();
}
ขั้นตอนที่ 2: สร้างคลาส implementer
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();