利用WebView的资源系统和.css文件的“file:/// android_res /”

时间:2013-08-22 15:48:43

标签: android css webview android-resources

我正在尝试做一个阅读类型的应用程序,我正在下载html格式的文章并在WebView中显示它们,并使用资产中的本地.css对它们进行样式化。

我用webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8", null);

加载所有内容

然而,问题是.css使用px作为一个单位,所以我想这不会飞,我想调整在平板电脑和不同方向上使用的值,就像你通常那样。然后我听说,WebView能够以"file:///android_res/"作为基本URL来加载来自资源的东西。

所以我想知道,我可以将它用于/raw文件夹中的.css文件,并利用带有限定符/raw-land/raw-sw720等的资源系统,就像通常那样样式布局时。

不幸的是,这似乎没有用,即使我做了像"file:///android_res/raw/land/"这样的事情,但硬编码的路径有点打败了紫薇。

那么..有什么解决方案吗?我最担心的是使用像素作为单位,但webview似乎可以自行调整内容,对吧?

谢谢!

1 个答案:

答案 0 :(得分:2)

就我而言,你可以在CSS文件中使用条件样式表标签,Android会理解。

有关此问题的更多信息,请访问http://developer.android.com/guide/webapps/targeting.html

例如,您可以为每个密度创建单独的样式表:

<link rel="stylesheet" media="screen and (-webkit-device-pixel-ratio: 1.5)" href="hdpi.css" />
<link rel="stylesheet" media="screen and (-webkit-device-pixel-ratio: 1.0)" href="mdpi.css" />