`
大头K
  • 浏览: 187102 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

隐藏android中webview放大缩小控件

阅读更多
在android SDK版本11以前(也就是Android3.0以前),webvie是不可以隐藏缩放控件的,现在我们通过反射来隐藏该控件。

重写WebView:
import java.lang.reflect.Method;
import android.annotation.SuppressLint;
import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.webkit.WebView;
import android.widget.ZoomButtonsController;

/**
 * 去掉webview当中放大缩小控件,并且保留效果
 */
public class SupportZoomWebView extends WebView {
	// Webview内部的按钮控制对象
	private ZoomButtonsController zoomController = null;

	public SupportZoomWebView(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
		disableZoomController();
	}

	public SupportZoomWebView(Context context, AttributeSet attrs,
			int defStyle) {
		super(context, attrs, defStyle);
		// TODO Auto-generated constructor stub
		disableZoomController();
	}

	public SupportZoomWebView(Context context, AttributeSet attrs) {
		super(context, attrs);
		// TODO Auto-generated constructor stub
		disableZoomController();
	}

	// 使得控制按钮不可用
	@SuppressLint("NewApi")
	private void disableZoomController() {
		// API version 大于11的时候,SDK提供了屏蔽缩放按钮的方法
		if (android.os.Build.VERSION.SDK_INT >= 11) {
			this.getSettings().setBuiltInZoomControls(true);
			this.getSettings().setDisplayZoomControls(false);
		} else {
			// 如果是11- 的版本使用JAVA中的映射的办法
			getControlls();
		}
	}

	private void getControlls() {
		try {
			Class webview = Class.forName("android.webkit.WebView");
			Method method = webview.getMethod("getZoomButtonsController");
			zoomController = (ZoomButtonsController) method.invoke(this, null);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	@Override
	public boolean onTouchEvent(MotionEvent ev) {
		// TODO Auto-generated method stub
		super.onTouchEvent(ev);
		if (zoomController != null) {
			// 隐藏按钮
			zoomController.setVisible(false);
		}
		return true;
	}
}
0
0
分享到:
评论

相关推荐

    android 实现可以放大缩小的TextView

    我们在浏览网页时,网页的文本可以放大缩小,android两点手势,两点距离靠近时缩小,两点距离...那么若果不用android的WebView控件,单纯的TextView能否做到放大缩小呢,其实也是可以的。只要响应和处理手势事件即可。

    android WebView设置setBuiltInZoomControls(true)同时隐藏缩放按钮

    WebView设置setBuiltInZoomControls(true)后,隐藏缩放按钮的控件在webView的源码里是通过: private ZoomButtonsController mZoomButtonsController; 这个私有控件控制的,而且也没有public方法可以获得此...

    android_中webView控件详解

    ### Android中的WebView控件详解 #### 一、概述 WebView是Android系统提供的一个重要的控件,主要用于在应用程序中展示Web内容。它不仅能够加载并显示HTML文档,还支持JavaScript脚本执行,允许开发者通过Java与...

    android 一个简单的图片放大缩小程序

    在Android开发中,创建一个简单的图片放大缩小程序是一项常见的任务,尤其在涉及到用户交互和图像展示的场景。本文将深入探讨如何实现这一功能,并结合标签中的"调用系统图片"、"放大缩小"以及"webView"的相关知识...

    android控件之WebView控件缩小

    【WebView控件在Android中的应用】 在Android开发中,WebView控件是一个非常实用的组件,它允许我们在应用程序内部展示网页内容,甚至执行一些JavaScript代码,从而实现与网页的交互。在标题和描述中提到的...

    Android开发教程之Android控件--千锋培训

    在Android开发中,控件是构建用户界面的基本元素,它们为用户提供交互操作的方式。这篇教程主要涵盖了九种常见的Android控件及其使用示例,包括ZoomControls、Include、VideoView、WebView、RatingBar、Tab、Spinner...

    仿照微信6的内置WebView控件

    1、在加载网页的时候,顶部有一个进度条,显示当前加载进度;...2、设置了所有的页面都在该控件中显示,不调用其他的浏览器; 3、支持手势放大缩小; 4、支持双击屏幕放大缩小; 5、按后退按钮,回到上一个网页;

    Android-commonwebview通用webview显示加载进度可放大和下载图片自定义menu

    这可以通过重写WebView的触摸事件处理来实现,使用户能够自由放大和缩小网页中的图片。 3. **图片下载功能**:项目实现了网页中图片的下载功能,可能使用了`WebSettings`的`setDownloadListener()`方法,注册一个...

    WebView详解

    它可以被视为一种轻量级的浏览器,允许开发者在应用程序内部嵌入网页,并提供一系列功能,如网页前后导航、放大缩小、文本搜索等。`WebView`使用WebKit渲染引擎来解析并显示网页。 #### 权限配置 为了使应用能够...

    Android 解决WebView调用loadData()方法显示乱码的问题

    在Android开发中,WebView是用于展示网页内容的重要组件,它允许开发者在应用内加载HTML、CSS和JavaScript等Web资源。然而,在使用WebView的`loadData()`方法加载自定义数据时,有时会出现乱码问题,这通常是由于...

    Android利用AsyncTask异步类实现网页内容放大缩小

    在`WebActivity`这个例子中,它被用来加载和控制网页内容的放大缩小功能。下面我们将深入探讨AsyncTask以及如何在Android中实现网页内容的缩放。 首先,AsyncTask包含三个泛型参数,分别代表输入类型(Params)、...

    Android 一个Demo搞定30个控件-IT计算机-毕业设计.zip

    26. **ImageView手势识别**:通过手势控制图片的放大、缩小、旋转等。 27. **SlidingPaneLayout**:左右滑动的面板布局。 28. **PagerAdapter**:用于创建滑动页面的适配器。 29. **NestedScrollView**:在...

    Android代码-Android-Material-Sloth

    里面内容包括,Rxjava,Retroft,,Picasso,WebView预览图片,图片预览放大、 缩小、移动,Material Design控件使用和activity切换动画等. 目前代码结构还不是很好,以后会慢慢重构.有新的技术也会不断往项目里面添加. ...

    Android代码-干货集中营

    增加图片放大、缩小手势 支持图片下载、分享 欢迎界面 侧边栏 下拉刷新 释放刷新 正在刷新 加载更多 图片 图片 图片 all webview webview2 openbrowser 依赖库 compile '...

    安卓 仿今日头条 中级版 完美获取数据,并展示

    (超高仿)今日头条 客户端源码最终版 完美实现了获取数据,页面... 实现:图片浏览和通过手势放大缩小 7.GestureDetector手势类及OnGestureListener手势监听类的使用 实现:新闻详情页面根据手势滑动来关闭该页面

    Google Android SDK开发范例大全(PDF高清完整版1)(4-1)

    4.23 动态放大缩小ImageView里的图片——运用Matrix对象来缩放图文件 4.24 动态旋转图片——Bitmap与Matrix旋转ImageView 4.25 猜猜我在想什么——RadioButtonID 4.26 离开与关闭程序的弹出窗口——对话窗口上的ICON...

    google android sdk开发范例大全 第二版 PDF 光盘代码

     4.23 动态放大缩小ImageView里的图片   4.24 动态旋转图片   4.25 猜猜我在想什么   4.26 离开与关闭程序的弹出窗口   4.27 隐藏式抽屉   4.28 手机桌面上的小玩意   4.29 手机图片搜索 ...

    Google+Android+SDK开发范例大全+第二版源代码7-8

    第 7章 娱乐多媒体 7.1 访问Drawable资源的宽和高 7.2 绘制几何图形 7.3 手机屏幕保护程序 7.4 用手指移动画面里的照片 7.5 加载存储卡的Gallery相簿 7.6 取得手机内置媒体中的图片文件 ...8.2 2网页的放大与缩小

Global site tag (gtag.js) - Google Analytics