Настройка масштаба шрифта на андроиде заставляет веб-браузер андроида не соответствовать - PullRequest
0 голосов
/ 09 июня 2019

Я создаю и приложение для Android, которое использует WebView.В WebView есть несколько кнопок, которые идеально подходят.Но при изменении масштаба шрифта в системных настройках кнопки не поместятся.

Я создал новую функцию в своем java-коде, которая сообщает функции javascript в веб-просмотре, какой параметр масштаба шрифта установлен.

final String fontScale = Settings.System.getString(cr, Settings.System.FONT_SCALE);
webView.post(new Runnable() {
    public void run() {
        webView.loadUrl("javascript:fontScale('"+fontScale+"')");
    }
});

Это должно масштабировать содержимое этого WebView до идеального размера.

function fontScale(fs) {
    var fsa = 1/fs;
    $('body').css('transform', 'scale('+fsa+')');
}

Это работает, но кнопки не находятся в предполагаемом положении.Некоторые поля и преобразования полностью игнорируются или изменяются.

Назначение / без масштаба преобразования:

normal

Сломанный / обычный масштаб шрифта в настройках:

broken1

Масштаб шрифта Бронкена / Огромного в настройках:

broken2

Есть ли способ, как WebView может игнорировать настройки системы масштаба шрифта?

...