Androidでwebviewのスクリーンショットを撮ろうとしています。しかし、スクリーンショットが速すぎると、結果として空白のスクリーンショットが表示されます。私はwebviewclientとonPageFinishedを実装しようとしましたが、ショットを取る前にロードするwebviewを聞いていましたが、うまくいきませんでした。スクリーンショットを撮る前にビューが読み込まれるようにするにはどうすればよいですか?スクリーンショットを撮る前にwebviewがHTMLを読み込むのを待ちます。
public void onSaveClicked(View reLayout){
final WebView webview;
setContentView(R.layout.webview);
webview = (WebView) findViewById(R.id.webview);
WriteJsJson();
Activity context;
context = _activity.get();
Intent fire = new Intent(context, WebviewActivity.class);
switch (_reportType) {
case 1 :
fire.putExtra("target", "daily"); // Parameter to tell the webview activity to open the right report.
case 2 :
fire.putExtra("target", "week");
case 3 :
fire.putExtra("target", "month");
}
startActivity(fire);
webview.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
grabScreen(); //method for taking screenshot and storing it...
}
});
このコードは完璧に動作していますか? –