使用webview加载网站,并在网络服务器上加载另一个css文件并更改div id?

时间:2012-03-04 11:47:15

标签: android webview webserver

我尝试了很多代码,但我无法找到它。

我想加载一个带有webview的网站。在我展示网站之前,我将使用Web服务器上的另一个css文件更改CSS文件路径。

例如: 改变这个......

<link rel="stylesheet" href="css/styleLight.css" type="text/css" />

有了......

<link rel="stylesheet" href="css/styleDark.css" type="text/css" />

我怎样才能改变例如div id? 在网站上,有一个

<div id="light1">

我怎样才能找到这个div并将他的id更改为例如

<div id="lightGreen">

2 个答案:

答案 0 :(得分:1)

您可以使用HttpUrlConnection发出HTTP请求,并获取HTML。然后,您可以将任何机会添加到HTML中,并使用WebView.loadData()将其加载到WebView中。

然后,您可以拦截使用此形式的处理程序轻触的任何链接:

    webView.setWebViewClient(new WebViewClient() {

        @Override
        public boolean shouldOverrideUrlLoading(WebView wv, String url) {
            Log.e("Test", "URL Clicked : " + url);
            // Request the HTML page here, then load into WebView
            return true;
        }
    });

答案 1 :(得分:1)

您可以通过常规下载方法(在WebView之外)下载html,然后通过html.replaceAll(...)更改代码,然后使用您从html获取的网站使用WebView to load the changed data作为BaseUrl。