2016-07-11 2 views
0

Мне нужна помощь в том, как вводить CSS, прежде чем показывать WebView. Цените любую помощь.Как вводить CSS перед показом WebView?

Мне нужно ввести CSS в WebView из активов, прежде чем WebView покажет.

+1

Может показать, что вы пытались и не сказать: «Я хочу некоторую помощь». Флаг для закрытия, так как это не прикладывает усилий. – basic

ответ

1

Вы должны загрузить содержимое URL-адреса вручную в свою структуру html. поместите этот код как page.html в свою папку с ресурсами.

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0"> 
    <style type="text/css"> 
     // your css code here 
    </style> 
</head> 
<body> 
    ${body} 
</body> 
</html> 

затем в коде Java:

String pageBody; // get page body by httpUrlConnection or okhttp or... 

String html = FileUtils.readFromAssets("page.html", context); 

// replace pageBody with ${body} in your html file 
html = html.replace("${body}", pageBody); 

WebView webView = (WebView) getView().findViewById(R.id.webView); 
webView.getSettings().setAllowFileAccess(true); 
WebSettings settings = webView.getSettings(); 
settings.setDefaultTextEncodingName("utf-8"); 
settings.setJavaScriptEnabled(true); 
webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "utf-8", null); 
Смежные вопросы