17

我正在从字符串加载数据,第一次向下滚动时,webview 会闪烁几次。

这是我加载数据的代码:

webview.loadDataWithBaseURL(null, message.getmContent(), "text/html", "UTF-8", null);

和xml:

    <WebView
        android:id="@+id/web_content"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_above="@+id/footer"
        android:layout_below="@id/message_title"
        android:layout_margin="4dp"
         />
4

5 回答 5

34

解决方案是添加:

webview.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
webview.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
于 2013-06-26T10:33:40.397 回答
6

也可以software在 xml 文件中设置图层类型,它对我来说很好。

android:layerType="software"
于 2016-07-06T08:48:41.520 回答
1

使用上述解决方案解决后,My WebView autoFocused 向下滚动。我通过以下方式解决了闪烁和自动滚动:

webView.setFocusable(false);
webView.setFocusableInTouchMode(false);
于 2014-02-18T11:24:53.433 回答
0

从缓存加载数据

webview.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
webview.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
webview.loadUrl(Your URL To Load);
于 2014-03-18T11:16:39.730 回答
0

也可以在 xml 文件中设置 android:minHeight ,它对我来说很好。

<WebView
   android:id="@+id/webView"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:minHeight="200dp"/>
于 2019-04-03T08:26:18.930 回答