javascript - 安卓。如何从 WebView 在 ImageView 上设置图像?

标签 javascript android html image webview

我正在使用 WebView 提交表单值(我无权访问 API)。 Webview 是不可见的。用户将只填写 EditText。 Webview 字段将使用 Javascript 填充。我遇到的问题是验证码图像。 Web 表单具有包含 CAPTCHA 数字的 PNG 图像。

enter image description here

HTML:

<img id="captcha_img" src="/service/INNCaptcha">

我想从 WebView 获取验证码图像,并将其设置为 ImageView。我试过这段代码:

webview.getSettings().setJavaScriptEnabled(true);
        webview.setWebViewClient(new WebViewClient() {
            @Override
            public void onPageFinished(WebView view, String url) {
                String javascript = "javascript: var form = document.getElementsByClassName('form');"
                        + "var body = document.getElementsByTagName('body');"
                        + "body[0].innerHTML = form[0].innerHTML;;";
                view.loadUrl(javascript);
                webview.setVisibility(View.VISIBLE);

                //THIS PIECE OF CODE RETURNING NULL BITMAP
                view.buildDrawingCache();
                Bitmap bmap = ivCaptcha.getDrawingCache();
                ivCaptcha.setImageBitmap(bmap);
            }
        });

结果:BitMap 为空。我想我应该准确确定要显示的图像 (PNG)。所以我的问题是在这种情况下如何从 WebView 在 ImageView 上设置图像?

最佳答案

您必须调用 setDrawingCacheEnabled (true)之前 getDrawingCache();

关于javascript - 安卓。如何从 WebView 在 ImageView 上设置图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25009759/

相关文章:

javascript - 将 HTML 放入 Javascript 的优点

android - com.google.android.gms 出现 DeadObjectException

javascript - 来自 JSON 的 jquery.addClass 无法正常工作

javascript - 将代码隐藏中的字符串输出到新页面或窗口

html - 如何将图像放在轮播 slider 的顶部

javascript - 阻止垂直滚动但允许水平滚动

javascript - NativeScript:模态属性未定义

android - ScrollView 和 OnGestureListener

javascript - 使用javascript添加到当前日期并有几个月的滚动

android - 如何将 android google maps 绑定(bind)到一个特定的跨度,所以当用户平移时他不能超过那个跨度?