Получение специальных возможностей дисплея размера Android - PullRequest
0 голосов
/ 07 сентября 2018

Мне нужно записать определенные метрики для использования моего приложения на основе шрифта и размера дисплея. Как получить программный размер экрана в разделе «Настройки» -> «Специальные возможности»? Масштаб шрифта прост, но, похоже, нет способа восстановить размер экрана.

float fontScale = getResources().getConfiguration().fontScale;

1 Ответ

0 голосов
/ 13 сентября 2018

Android API не предоставляет этот масштабный коэффициент, выбранный пользователем. Однако подобный масштаб может быть получен путем деления плотности DPI (которая масштабируется на основе настроек пользователя) и DENSITY_DEVICE_STABLE, которая дает требуемый результат.

final DisplayMetrics metrics = getResources().getDisplayMetrics();
final int currentDeviceDensity = metrics.densityDpi;
float displayDensityScaleFactor = (float) currentDeviceDensity / DENSITY_DEVICE_STABLE;
...