我最初开始使用WebView在assets文件夹中显示网页。然而,我似乎已经超越了这一点,因为我的页面不像我期望的那样表现。根据开发人员文档,WebView应仅用于没有交互的静态页面。 CSS,javascript等未启用。这与我所看到的行为有关。虽然我的页面在开发环境浏览器中很好地呈现,但它看起来像设备上的纯HTML而没有css或javascript功能。因此,如果我想显示一个带有css和javascript等的本地(资产文件夹)html页面,我将如何去做呢?我假设教程存在这么简单的事情,但我的谷歌搜索结果是空的。
关闭机会我的链接在这里很糟糕就是标题。
<head>
<link href="folderA/folderB/file.css" rel="stylesheet" />
<script src="folderA/js/file.js"></script>
</head>
再次感谢你帮助这个菜鸟。 JB
刚发现这个。可能在正确的轨道上? http://developer.android.com/guide/webapps/index.html
答案 0 :(得分:3)
根据开发人员文档,WebView只应用于没有交互的静态页面
请引用。我从未见过这样的说法,并且有许多应用程序使用WebView
进行“交互”。
CSS,javascript等未启用
CSS肯定是启用的 - 实际上,AFAIK,即使你想要也无法禁用它。默认情况下禁用JavaScript,但只需拨打getSettings().setJavaScriptEnabled(true)
上的WebView
即可启用它。
因此,如果我想显示一个带有css和javascript等的本地(assets文件夹)html页面,我将如何进行此操作?
loadUrl("file:///android_asset/index.html")
可以在项目的index.html
目录的根目录中加载assets/
文件。
例如,在this sample project中,我将file:///android_asset/book/0.htm
(和其他HTML文件)加载到WebView
加载到ViewPager
的小部件中。每个HTML都引用一对CSS样式表:
<link href="0.css" type="text/css" rel="stylesheet"/><link href="pgepub.css" type="text/css" rel="stylesheet"/>
在this sample project中,我从资源中加载了一些HTML并使用了一些页内JavaScript。
现在,我对assets/
内部的目录结构做了很多工作,并尝试跨目录访问事物。可以想象你遇到了与此相关的一些问题。