WebView pozbywa się podwójnego powiększania.
Przeczytałem wiele biletów na temat Powiększania w WebView i nie znalazłem odpowiedzi w moim przypadku.
Oto moja konfiguracja:
Używam niestandardowego widoku z ogólnymi ustawieniami:
getSettings().setBuiltInZoomControls(false);
getSettings().setSupportZoom(false);
getSettings().setUseWideViewPort(true);
getSettings().setLoadWithOverviewMode(true);
Pozwólcie mi zauważyć tutaj, że polegam na trybie OverviewMode i WideViewPort, aby skalować mój WebView.
Nadpisuję także mój OnTouchEvent i deleguję wszystkie odpowiednie zdarzenia do detektora gestów:
@Override
public boolean onTouchEvent(MotionEvent event) {
if (gestureDetector.onTouchEvent(event)) return true;
return super.onTouchEvent(event);
}
Oto implementacja jego słuchaczy, która przechwytuje wszystkie zdarzenia doubleTap:
@Override
public boolean onDoubleTapEvent(MotionEvent e) {
// Do nothing!
return true;
}
@Override
public boolean onDoubleTap(MotionEvent e) {
// Do nothing!
return true;
}
@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
// Do nothing!
return true;
}
Również nadpisałem te 2 metody WebView związane z powiększeniem:
@Override
public boolean zoomIn() {
return true;
}
@Override
public boolean zoomOut() {
return true;
}
Poza tymi wszystkimi opcjami pewna częstotliwość stuknięć spowoduje, że mój widok internetowy będzie powiększany / pomniejszany. Nie znalazłem opcji, która wyłącza ten rodzaj powiększania, wydaje się, że MotionEvent dla tego powiększenia nie ma zastosowania dla GestureDetector, a metody zoomOut () nadpisania zoomIn () również nie działają.
Czy ktoś może mi pomóc w uniknięciu tego podwójnego dotknięcia powiększenia WebView?