2017-07-25 156 views
1

我有webView的活动。这里布局的xml:Android 8:WebView - 垂直滚动条 - 不正确的工作

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <WebView 
     android:id="@+id/webview" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 

</LinearLayout> 

这里活动代码:

public class TestActivity extends AppCompatActivity { 
    public static final String HTML_TEXT = "HTML_TEXT"; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.test_activity); 
     String htmlText = getIntent().getExtras().getString(HTML_TEXT); 
     WebView webview = (WebView) findViewById(R.id.webview); 
     webview.getSettings().setJavaScriptEnabled(true); 

     String resultHTML = "<html><head><meta charset=utf-8></head><body>" + htmlText + "</body></html>"; 
     webview.loadDataWithBaseURL("fake://", resultHTML, "text/html", StringUtil.encodingUTF8, null); 
    } 
} 

而且这里的结果是:

enter image description here

而且,你可以在右侧显示的成功看到滚动条滚动时。 此应用为Android 4.0,5.0,6.0,7.0。好。

但在Android 8.0(模拟器)上滚动到项目“测试很多帖子7/15”(大约一半屏幕)滚动条是隐藏的。我滚动到屏幕底部,但滚动条不显示。

这导致:

enter image description here

和滚动到屏幕底部(滚动条是隐藏的):

enter image description here

如何解决这一问题?

+0

任何成功?我有同样的问题... – Alessandro

回答

0

onCreate()方法试试这个:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.your_web_view_layout); 

    browser = (WebView)findViewById(R.id.your_webview); 
    WebSettings mWebSettings = browser.getSettings(); 
    mWebSettings.setBuiltInZoomControls(true); 
    browser.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY); 
    browser.setScrollbarFadingEnabled(false); 
    browser.loadUrl("file:///android_asset/index.html"); 
} 
+0

没有帮助。同样的结果。 – Alex