一、背景说明
当前app中基本都会使用到webview加载一些 H5 界面,在这里不讨论H5的发展趋势和Android的竞争关系,只是探讨一个问题:保存 H5 的图片功能。这一点 Android webview 不如 iOS的webview实现的好,因为 iOS 已经实现长按保存,但是Android的需要开发人员自己实现。
二、思路分析
要保存图片,首先要可以拦截到长按事件,然后分析点击的对象类型,之后进行图片保存。
首先,拦截长按事件,webview 也是一个view子类,
因此可以像其他控制长按事件一样:
mWebView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
}
});
其次,分析当前点击的对象的类型:
当前函数表示,获取 H5 界面的标签