我正在尝试在WebView
中获取用户触摸的图像的网址。
我使用getHitTestResult()
但我需要处理getHitTestResult()
返回UNKNOWN_TYPE
的情况。
文档提示requestFocusNodeHref (Message hrefMsg)
,但我不明白Message应该是什么。
谢谢你的任何想法。
答案 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);
}