1

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

我把它全部加载webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8", null);

但是,问题是 .csspx用作一个单元,所以我想这不会飞,我想像往常一样调整在平板电脑和不同方向上使用的值。然后我听说,WebView 能够从具有"file:///android_res/"基本 url 的资源中加载内容。

所以我想知道,我可以将它用于文件/raw夹中的 .css 文件,并利用 qualifiers 等资源系统/raw-land/raw-sw720就像你通常在设置布局样式时一样。

不幸的是,这似乎不起作用,即使我做了类似的事情,"file:///android_res/raw/land/"但硬编码路径有点打败了目的。

所以..有什么解决办法吗?我最大的担心是使用像素作为单位,但 webview 似乎可以自己调整东西,对吧?

谢谢!

4

1 回答 1

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" />
于 2013-11-12T09:37:46.520 回答