Noh*_*sib 5 android android-layout
我正在编写一个应用程序,我需要在Android应用程序中嵌入HTML对象,我按照这里给出的教程:http://mobile.tutsplus.com/tutorials/android/android-sdk-embed-a-webview-with -the-webkit-engine /并相应地修改了代码,以下是代码,但我得到一个白屏......
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
WebView engine = (WebView) findViewById(R.id.web_engine);
engine.getSettings().setJavaScriptEnabled(true);
engine.getSettings().setPluginsEnabled(true);
engine.getSettings().setAppCacheEnabled(false);
engine.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
String data = "<html>" +
"<body>" +
"bb"+
"<object width=\"450\" height=\"300\" align=\"middle\"><param name=\"movie\" value=\"http://www.raaga.com/widgets/top10/widgettopten.swf?l=H&q=1\" /><param name=\"wmode\" value=\"transparent\"><embed src=\"http://www.raaga.com/widgets/top10/widgettopten.swf?l=H&q=1\" width=\"450\" height=\"300\" align=\"middle\" type=\"application/x-shockwave-flash\" wmode=\"transparent\" FlashVars=\"gig_lt=1312323434023&gig_pt=1312325057958&gig_g=2\"/> <param name=\"FlashVars\" value=\"gig_lt=1312323434023&gig_pt=1312325057958&gig_g=2\" /></object>"+
"gg"+
"</body>" +
"</html>";
engine.loadData(data, "text/html", "UTF-8");
}
}
Run Code Online (Sandbox Code Playgroud)
我想嵌入的对象是:
<object width="450" height="300" align="middle"><param name="movie" value="http://www.raaga.com/widgets/top10/widgettopten.swf?l=H&q=1" /><param name="wmode" value="transparent"><embed src="http://www.raaga.com/widgets/top10/widgettopten.swf?l=H&q=1" width="450" height="300" align="middle" type="application/x-shockwave-flash" wmode="transparent" FlashVars="gig_lt=1312323434023&gig_pt=1312326303531&gig_g=2"/> <param name="FlashVars" value="gig_lt=1312323434023&gig_pt=1312326303531&gig_g=2" /></object>
Run Code Online (Sandbox Code Playgroud)
Dan*_*n S 11
将文件放在/ assets目录中,您可以使用file:/// android_asset /目录访问它.
而不是将html放在代码中的assets文件夹中,您可以放置静态数据文件,如HTML及其相关的CSS,图像和JavaScript文件等.然后您可以使用WebView.loadUrl().这样做的好处是不必使用Java String转义和繁琐的编辑.您可以在自己喜欢的Web项目编辑器中单独创建文件,然后复制并粘贴它们.如果您需要在运行时编辑该文件,您仍然可以从assets目录加载该文件,而不必担心Java String转义和繁琐的编辑.然后应用编辑并传递给WebView.loadData().
要帮助调试此问题,请实现WebChromeClient.onLoadResource并查看控制台消息教程.
不要忘记使用PackageManager.getPackageInfo()来检查flash是否可用.如果不是,您可以向用户提供从市场下载的选项.
| 归档时间: |
|
| 查看次数: |
19746 次 |
| 最近记录: |