Android WebView,view.capturePicture()。getHeight()为0

时间:2013-05-14 10:46:31

标签: android webview webviewclient

我在Android 4.0上工作。我有一个WebView,我想捕捉它的屏幕。 我覆盖WebViewClient onPageFinished如下:

@Override
public void onPageFinished(WebView view, String url) {
                Picture picture = view.capturePicture();
Toast.makeText(finplan.this, "picture height "+picture.getHeight()+ " url "+url, Toast.LENGTH_LONG).show();

在另一个程序中我调用了loadUrl:

mywebview.loadUrl("http://www.google.com"); 
// this one works fine and picture.getHeight() is > 0

mywebview.loadUrl("file:///android_asset/test.html"); 
// this one works, but the picture.getHeight() retrieved in onPageFinished is always 0

test.html是一个任何简单的html文件,我后来注意到任何带有“http //”的loadUrl工作正常但不适用于'file://'。这有什么帮助???

1 个答案:

答案 0 :(得分:0)

将.html文件粘贴到项目文件夹的assets文件夹中。并使用以下代码:my.xml:

在布局文件夹中创建一个xml文件
   <WebView  xmlns:android="http://schemas.android.com/apk/res/android"
             android:id="@+id/webview"
             android:layout_width="fill_parent"
             android:layout_height="fill_parent"
          />

在活动中添加fol代码

setContentView(R.layout.my);
WebView mWebView = null;
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("file:///android_asset/new.html"); //new.html is html file name.