1

我正在尝试获取用户在WebView. 我使用getHitTestResult()但我需要处理getHitTestResult()return的情况UNKNOWN_TYPE

文档建议requestFocusNodeHref (Message hrefMsg)但我不明白Message应该是什么。

谢谢你的任何想法。

4

1 回答 1

4

在这里回答我自己的问题。这就是它的工作原理。有问题的消息必须发送到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);
}
于 2012-06-08T14:53:56.780 回答