1 需求和效果爆照
浏览器app封装了Webview,然后实现实现长按Webview页面文字自定义复制、全选、分享、搜索、翻译功能(支持多语言),都在自己的浏览器app里面进行搜索和翻译,不跳到系统浏览器里面去
效果爆照如下,oppo手机效果如下
华为手机效果如下
2 分析加实现
1、继承WebView的类如果设置了setOnLongClickListener事件(一般用来分区长按页面内容类型,比图图片类型、链接类型),要记得返回false,如果返回true的话,长按字体会导致弹不出系统自带的 复制、全选、搜索、翻译这些框,这里是一个坑,不要踩了
2、我们需要拦截ActionMode、返回我们自定义的ActionMode,所以在继承WebView的类里把原始的startActionMode方法进行替换,可以看到我们把super.startActionMode(callback, type)进行注释掉了,题换成我们自己的构建的Act