Android WebView установить размер шрифта системы по умолчанию?

Я имею webview загружается с пользовательской строкой htlm

моя проблема в том, когда я установил размер текста в телефоне как самый большой webview текст еще нормальный или маленький

я нашел solution установить webview размер текста, но фиксированный

есть ли способ сделать webviewtextsize как системный размер текста по умолчанию?

это моя настройка веб-просмотра

holder.message.getSettings().setTextSize(WebSettings.TextSize.NORMAL);

2 ответа

Я получил это на работу:

        WebView webview = result.findViewById(R.id.webview);

        WebSettings settings = webview.getSettings();
        float scale = 100f*getResources().getConfiguration().fontScale;
        settings.setTextZoom((int)scale);

        webview.loadUrl("file:///android_asset/file.html");

Он получает масштаб из конфигурации системы, а затем использует его для установки коэффициента масштабирования. В своем HTML я добавил , чтобы сделать его немного больше.

Возможно, проблема связана со строкой html, которую вы загружаете в свой webView. В какой-то момент вы вызываете webView.load(myHtmlString, . . .)

Этот HTML может содержать объявление шрифта, включая настройку размера шрифта. Подробнее об объявлении размера шрифта в формате html см.: http://www.w3schools.com/tags/att_font_size.asp

Чтобы изменить размер шрифта в вашем HTML, вы можете сделать что-то вроде:

myHtmlString = myHtmlString.replace("14", "16"); 

Конечно, это изменило бы все экземпляры с 14 на 16, даже те, которые не связаны с размером шрифта.

Или ваш HTML может содержать заголовки, как. Изменение на делает шрифт больше.

Надеюсь, это поможет.

Другие вопросы по тегам