Я хочу, чтобы макет был одинаковым по размеру и форме, и ранее настройка масштаба шрифта работала нормально. Теперь Android, кажется, предложил вариант изменения размера дисплея, который дезориентирует всю мою компоновку.
Я попытался создать значения большого размера, макета большого размера и попытался установить нормальные размеры для макета, но без положительного результата.
Я также нашел этот код в какой-то теме, чтобы помочь мне с моей проблемой:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
Log.d("TAG", "adjustDisplayScale: " + configuration.densityDpi);
DisplayMetrics metrics = getResources().getDisplayMetrics();
WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
wm.getDefaultDisplay().getMetrics(metrics);
if (configuration.densityDpi >= 485) //for 6 inch device OR for 538 ppi
configuration.densityDpi = 500; //decrease "display size" by ~30
else if (configuration.densityDpi >= 300) //for 5.5 inch device OR for 432 ppi
configuration.densityDpi = 400; //decrease "display size" by ~30
else if (configuration.densityDpi >= 100) //for 4 inch device OR for 233 ppi
configuration.densityDpi = 200; //decrease "display size" by ~30
Log.d("TAG", "metrics density: " + metrics.density + "," + metrics.scaledDensity);
metrics.scaledDensity = configuration.densityDpi * metrics.density;
Log.d("TAG", "scaledDensity: " + metrics.scaledDensity);
this.getResources().updateConfiguration(configuration, metrics);
}
Это также, кажется, не приносит пользы моему макету. Это все еще становится огромным и дезориентированным. Кто-нибудь может мне сказать, что я могу сделать, чтобы размер был одинаковым, а системные настройки не влияли на мои макеты и дизайн?