在android webview中获取问题文本对齐

时间:2013-04-03 07:09:29

标签: android webview

我是android新手。我正在为Android设备开发epub阅读器。 webview显示左对齐的文本。我希望它是合理的。我不确定这是文本对齐问题。

这是我的网页设置:

final WebView mainWebView = (WebView) findViewById(R.id.webView1);
    WebSettings webSettings = mainWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.setUseWideViewPort(true);
    webSettings.setLoadWithOverviewMode(true);
    mainWebView.setWebViewClient(new MyCustomWebViewClient());
    mainWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
    mainWebView.loadUrl("my html page");// loding my html pages here
    mainWebView.getSettings().setUseWideViewPort(true);

我使用此代码进行文本对齐

mainWebView.loadUrl("javascript:(function addCSSRule(selector, newRule) { " +  
        "var mySheet = document.styleSheets[0];"+
           "if (mySheet.addRule) { " +  
           "mySheet.addRule(selector, newRule);"    +   
           "} else {"+
           "ruleIndex = mySheet.cssRules.length;"+
           "mySheet.insertRule(selector + '{' + newRule + ';}', ruleIndex);" +
           "}"+
           "})addCSSRule(selector, newRule)");  
  mainWebView.loadUrl("javascript:addCSSRule('p', 'text-align: justify;');");

如果我删除mainWebView.getSettings().setUseWideViewPort(true);意味着我得到了合理的文字。

webview的屏幕截图:

enter image description here

我希望它是这样的:

enter image description here

我不知道我的代码中有什么问题。 mainWebView.getSettings().setUseWideViewPort(true);允许缩放。不知道为什么它会导致文本对齐。请帮我解决这个问题。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您似乎没有将webSettings应用于Web视图。我正在寻找符合

的内容
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl(url);

所以也许你的javascript没有被解雇因为它不在......?