在WebView中可以通过添加上下文监听器的方法,实现WebView的长按事件监听;具体代码:
mWebView.setOnCreateContextMenuListener(new View.OnCreateContextMenuListener() {
public void onCreateContextMenu(ContextMenu menu, View arg1,
ContextMenuInfo arg2) {
// TODO Auto-generated method stub
MenuItem.OnMenuItemClickListener handler = new MenuItem.OnMenuItemClickListener() {
public boolean onMenuItemClick(MenuItem item) {
// do the menu action
switch (item.getItemId()) {
case 1:
Log.i("you click", "分享");
break;
case 2:
Log.i("you click", "下载");
break;
}
return true;
}
};
HitTestResult result = ((WebView) arg1).getHitTestResult();
int resultType = result.getType();
if ((resultType == HitTestResult.IMAGE_TYPE)) {
menu.setHeaderTitle(result.getExtra());
Intent i = new Intent();
MenuItem item = menu.add(0, 1, 0, "分享")
.setOnMenuItemClickListener(handler);
item.setIntent(i);
item = menu.add(0, 2, 0, "下载").setOnMenuItemClickListener(
handler);
item.setIntent(i);
}
}
});