webview показывает белую полосу на правой стороне


Я даю следующий вызов метода моему клиенту webview, встроенному в мой макет
wv.loadData("<html><body bgcolor="Black"></body></html>","text/html", "utf-8");

когда я запускаю это на устройстве, он показывает белую вертикальную полосу с правой стороны. Я исправил белую вещь с помощью webview.setBackgroundColor(Color.BLACK); но я хочу удалить его полностью

Ниже приведен мой макет xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
    <WebView android:id="@+id/wv1"
            android:layout_height="fill_parent"
            android:layout_width="fill_parent"
            />

</LinearLayout>

какие предложения??

4 55

4 ответа:

использовать следующий, чтобы скрыть, но не удалить функциональность прокрутки. Корректировка поля макета-это неприятная работа.

//webview being your WebView object reference. webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);

Я бы установил margin: 0 и padding: 0 внутри . Вы могли бы сделать что-то вроде

<body style="margin: 0; padding: 0">

это может быть не самый "лучший" ответ, но он работал для меня.

<WebView android:layout_marginRight="-7dip" />

Дайте мне знать, если есть что-то лучше, потому что это кажется мне хакерским.

мое приложение имеет возможность выбора ночного режима, который переключается на белый на черном. Центральный взгляд в WebView отображения текста.

для ночного режима я использовал дополнительный файл css, который показывал белый текст на черном фоне, но пользователи жаловались на белую полосу прокрутки справа. Поэтому у меня была почти такая же проблема, как описано выше. Однако мне нужно было программно включать и выключать ночной режим во время выполнения, но я не хотел просто скрывать полосы прокрутки.

в простое решение, которое я использовал было:

if (isNightMode()) {
    webView.setBackgroundColor(Color.BLACK);
} else {
    webView.setBackgroundColor(Color.WHITE);
}

установка backgroundColor WebView повлияла на полосы прокрутки по мере необходимости.