【问题标题】:Injecting CSS into webpage in android webview在android webview中将CSS注入网页
【发布时间】:2014-05-08 05:22:39
【问题描述】:

我浏览了很多网页来获取教程。我看到很多关于将 CSS / js 注入本地 HTML 文件的帖子。但我正在尝试将我的 CSS 文件注入到 android webview 项目中的网页中。示例:将自定义字体 CSS 注入 Facebook、Google 等...(不注入本地 HTML 文件)。我的代码不起作用。

这是我的代码

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_webview);
    String html = "<html><head><style>@font-face {@font-family: 'Conv_LISU'; src: url('file:///android_asset/font/LISU.ttf');} body, button, input, label, select, td, tr, textarea,li,ul,span,div,table,h1,h2,h3,h4{ font-family:Conv_LISU;}</style></head>";

    WebView webView = (WebView)findViewById(R.id.webView);
    webView.setWebViewClient(new WebViewClient() {
        @Override
        public void onReceivedError(WebView view, int errorCode,
                String description, String failingUrl) {
            // Handle the error
        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    });

    webView.setInitialScale(1);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setLoadWithOverviewMode(true);
    webView.getSettings().setUseWideViewPort(true);
    webView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
    webView.setScrollbarFadingEnabled(false);
    webView.loadData(html, "text/html", "utf-8");
    webView.loadUrl("http://google.com");


}

}

【问题讨论】:

    标签: android css webview


    【解决方案1】:

    这种方式不起作用,因为您的源字体来自 /assets/ 文件夹。

        String html = "<html><head><style>@font-face {@font-family: 'Conv_LISU'; src: url('file:///android_asset/font/LISU.ttf');} body, button, input, label, select, td, tr, textarea,li,ul,span,div,table,h1,h2,h3,h4{ font-family:Conv_LISU;}</style></head>";
    

    当CSS不是来自互联网时,它不会获取字体,将您在“src:url('file:///android_asset/font/LISU.ttf')”处的代码更改为一些可下载的字体链接,例如:“ src:url("http://www.vonna.com/fonts/sahara01.ttf")".

    它现在应该可以工作了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-07-13
      • 2014-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-13
      • 1970-01-01
      相关资源
      最近更新 更多