Как удалить кнопки масштабирования в веб-браузере Android?

Можно ли удалить кнопки масштабирования Введите описание изображения здесь ? Его отображение при масштабировании WebView. Мне нужно управлять увеличением без этих кнопок. Я использую android 2.3.

Я использовал ниже код,

WebView webview = (WebView) findViewById(R.id.webview); webview.getSettings().setBuiltInZoomControls(false); webview.getSettings().setJavaScriptEnabled(true); FrameLayout mContentView = (FrameLayout) getWindow(). getDecorView().findViewById(android.R.id.content); final View zoom = webview.getZoomControls(); mContentView.addView(zoom, ZOOM_PARAMS); zoom.setVisibility(View.GONE); 

 getSettings().setBuiltInZoomControls(false); 

Используйте приведенную выше строку кода для удаления кнопок масштабирования.

В API> = 11 вы можете использовать:

 webView.getSettings().setBuiltInZoomControls(true); webView.getSettings().setDisplayZoomControls(false); 

Обновлено ::: Если вы хотите увеличить / уменьшить масштаб без кнопок увеличения, используйте приведенный ниже код (скопированный здесь )

 public class Main extends Activity { private WebView myWebView; private static final FrameLayout.LayoutParams ZOOM_PARAMS = new FrameLayout.LayoutParams( ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.BOTTOM); @Override protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.webview); myWebView = (WebView)findViewById(R.id.webView);  FrameLayout mContentView = (FrameLayout) getWindow().  getDecorView().findViewById(android.R.id.content);  final View zoom = myWebView.getZoomControls();  mContentView.addView(zoom, ZOOM_PARAMS);  zoom.setVisibility(View.GONE);  myWebView.loadUrl("http://www.almondmendoza.com"); } } 

Измените это на своем AndroidManifest:

  android:minSdkVersion="8" 

к этому:

  android:minSdkVersion="11" 

Чем использовать это в настройках веб-просмотра:

 getSettings().setBuiltInZoomControls(true); getSettings().setDisplayZoomControls(false); 

Наконец, мой ответ: Невозможно скрыть / удалить эти кнопки на WebView в Android 2.3.

Следуйте этому коду. Это поможет вам.

Main.java

  WebView wv = (WebView) findViewById(R.id.webview1) ; WebSettings webSettings = wv.getSettings(); webSettings.setBuiltInZoomControls(false); wv.loadUrl(url); 

Просто добавьте эту строку:

 webSettings.setDisplayZoomControls(false); 

Кнопки масштабирования можно удалить, реализовав свой собственный веб-просмотр и используя отражение, чтобы получить встроенные средства управления увеличением и сделать их невидимыми для API ниже 11 (Honeycomb). Код, как, таким образом, работает для всех API до андроидной нуги;

 public class CustomWebView extends WebView{ private ZoomButtonsController zoom_controll = null; public CustomWebView(Context context) { this(context, null); } public CustomWebView(Context context, AttributeSet attrs) { this(context, attrs, android.R.attr.webViewStyle); } public CustomWebView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); initWebSettings(); } @SuppressLint("NewApi") private void initWebSettings() { WebSettings webSettings = getSettings(); webSettings.setSupportZoom(true); webSettings.setBuiltInZoomControls(true); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { webSettings.setAllowContentAccess(true); webSettings.setDisplayZoomControls(false); } else { try { Class webview = Class.forName("android.webkit.WebView"); Method method = webview.getMethod("getZoomButtonsController"); zoom_controll = (ZoomButtonsController) method.invoke(this, null); } catch (Exception e) { e.printStackTrace(); } } } @Override public boolean onTouchEvent(MotionEvent event) { if(zoom_controll != null) zoom_controll.getZoomControls().setVisibility(View.GONE); return super.onTouchEvent(event); } } 

Если вы хотите отключить только элементы управления увеличением, используйте это: webView.getSettings().setDisplayZoomControls(false);

Вот решение:

  if (ev.getAction() == MotionEvent.ACTION_DOWN || ev.getAction() == MotionEvent.ACTION_POINTER_DOWN || ev.getAction() == MotionEvent.ACTION_POINTER_1_DOWN || ev.getAction() == MotionEvent.ACTION_POINTER_2_DOWN || ev.getAction() == MotionEvent.ACTION_POINTER_3_DOWN) { if (multiTouchZoom && !buttonsZoom) { if (ev.getPointerCount() > 1) { getSettings().setBuiltInZoomControls(true); getSettings().setSupportZoom(true); } else { getSettings().setBuiltInZoomControls(false); getSettings().setSupportZoom(false); } } } if (!multiTouchZoom && buttonsZoom) { if (getPointerCount(ev) > 1) { return true; } } 

В вашем случае multiTouchZoom истинно, а buttonsZoom – false.

Я нашел его здесь, чтобы включить / отключить масштабирование в Android WebView, и это сработало для меня.