这是evernote上的笔记,笔记入口
android的webview自带的缩放功能很不错,唯一的遗憾就是那个按钮太丑了,于是考虑将其去掉,但是webview对外开放的方法并没有能够完成这个功能的,于是考虑自己继承webview,来添加这个功能。主要就是:
this.getSettings().setBuiltInZoomControls(true);
this.getSettings().setDisplayZoomControls(false);
如果api较低,则通过反射去执行未暴露的方法。用反射来干坏事也是没办法。
去掉滚动条比较简单,webview直接提供了方法:
this.setVerticalScrollBarEnabled(false);
this.setHorizontalScrollBarEnabled(false);
代码是参考的stackOverFlow,哪个帖子找不到了。
相关代码:(重写的webVIew内部要调用的方法)
/** * 隐藏缩放按钮 * @param settings */ @TargetApi(Build.VERSION_CODES.HONEYCOMB) private void setZoomViewInvisible(WebSettings settings) { //去掉滚动条 mWebView.setVerticalScrollBarEnabled(false); mWebView.setHorizontalScrollBarEnabled(false); // 设置可缩放 settings.setBuiltInZoomControls(true); // 根据版本号设置缩放按钮不显示 if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {//用于判断是否为Android 3.0系统, 然后隐藏缩放控件 settings.setDisplayZoomControls(false); }else {// Android 3.0(11) 以下使用以下方法 setZoomControlGone(mWebView); } } //实现放大缩小控件隐藏 public void setZoomControlGone(View view) { Class classType; Field field; try { classType = WebView.class; field = classType.getDeclaredField("mZoomButtonsController"); field.setAccessible(true); ZoomButtonsController mZoomButtonsController = new ZoomButtonsController(view); mZoomButtonsController.getZoomControls().setVisibility(View.GONE); try { field.set(view, mZoomButtonsController); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } } catch (SecurityException e) { e.printStackTrace(); } catch (NoSuchFieldException e) { e.printStackTrace(); } }
效果图(这里显示的是一个图片,已经放大了):
相关推荐
隐藏WebView的缩放按钮,采用反射机制实现,测试支持2.x,4.X
WebView设置setBuiltInZoomControls(true)后,隐藏缩放按钮的控件在webView的源码里是通过: private ZoomButtonsController mZoomButtonsController; 这个私有控件控制的,而且也没有public方法可以获得此...
webview大图片缩放
Android WebView 去除标题 利用javacript交互
主要为大家详细介绍了Android点击WebView实现图片缩放及滑动浏览效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
滚动条的设置(隐藏或者显示,内侧显示还是外侧显示) 优化X5WebView的预加载问题(使用IntentService规避风险) 项目文字说明 著作权归作者所有,转载请注明作者, 商业转载请联系作者获得授权,非商业转载请注明...
本文实例为大家分享了Android WebView图片浏览及缩放效果展示的具体代码,供大家参考,具体内容如下 此工程用到了两个开源库: PhotoView支持图片的缩放 Android-Universal-Image-Loader图片的异步加载 ...
实现在tableViewCell上添加的WebView 展示效果,有一个按钮可以将webView内容动态的改变,这个Demo仅仅起到抛砖引玉的效果,有一些细节没处理,比如,第一次加载内容显示的高度,我这里给的100定死了,项目中也可以...
科尔多瓦在android上禁用垂直滚动条。 该插件为您提供了一种以编程方式重新启用它们的方法。 如何使用它? 安装 通过以下方式将插件安装到您的cordova项目中 cordova plugin add cordova-android-scrollbar 安装...
Android WebView视频显示解决方案,支持WebView视频全屏显示和隐藏,支持设置视频海报,支持设置WebView加载进度View,支持WebView视频翻转
看了下WebView的源码,修改此缩放比例值WebView内部是通过: private void setNewZoomScale(float scale, boolean updateTextWrapScale,boolean force) {} 方法修改的,没有其他办法修改此比例值。 那么我们只有...
在android的实际开发中有时候我们需要将文字和图片一起显示,可以用TextView和ImageView的组合来实现,其实用网页显示更容易,本文介绍android显示含有图片和文字的本地网页html,hml的方法,并支持放大缩小。
介绍有关X5WebView的使用及展示,内部集成了腾讯浏览器X5WebView,与微信,QQ内置浏览器内核相同,解决兼容性问题。
WebView2为WPF网页浏览工具,具有简单易用,页面显示清晰的优点。 但是,由于微软设计缺陷,无法进行分层界面设计,顶层控件会被遮挡住。 本样例很好的解决了上述问题,实现界面的分层控制,能够正常显示顶层控件。...
Android JavaScript打开webview图片、支持放大缩小查看图片
简单的布局就可以实现向上拖动进入webview界面,查看图文详情
在js中调用android代码,实现在android中点击webview上的按钮,屏幕打印Toast。
在android端,用webview加载html,里面包含一个按钮,点击html里的按钮跳转到android的另一个activity中
uniapp 使用webView通讯