WebView.requestFocusNodeHref(消息hrefMsg)中的消息是什么?

时间:2012-05-24 18:02:03

标签: android

我正在尝试在WebView中获取用户触摸的图像的网址。 我使用getHitTestResult()但我需要处理getHitTestResult()返回UNKNOWN_TYPE的情况。

文档提示requestFocusNodeHref (Message hrefMsg),但我不明白Message应该是什么。

谢谢你的任何想法。

1 个答案:

答案 0 :(得分:1)

在这里回答我自己的问题。 这就是它的工作原理。有问题的邮件必须发送给处理请求的Handler

/*
 * Used to get the result of requestFocusNodeHref(msg)
 */
class MyHandler extends Handler{
    @Override
    public void handleMessage(Message msg) {
        super.handleMessage(msg);
        String src = msg.getData().getString("src");
        launchImageSaveAs(src);
        }
    }

然后,在代码中的某个位置,例如在OnLongClickListener中,您创建一条新消息并将处理程序设置为目标,最后调用requestFocusNodeHref

if(result.getType() == HitTestResult.UNKNOWN_TYPE){
    Message msg = new Message();
    msg.setTarget(new MyHandler());
    webview.requestFocusNodeHref(msg);
}