Android Webview отключает все ссылки, но включает прокрутку

Я использую Webview в Android, где я загружаю веб-страницу, но я хочу, чтобы все ссылки были отключены, а веб-представление должно быть прокручиваемым.

Я использую следующий код прямо сейчас:

tnc.setOnTouchListener(new View.OnTouchListener() {
                     public boolean onTouch(View v, MotionEvent event) {
                        return true;
                     }
                 });

Это отключает веб-просмотр, но прокрутка также исчезает.

Я также пробовал:

tnc.setClickable(false);

но это тоже не работает. Пожалуйста, помогите мне.


person Sanober Malik    schedule 26.02.2013    source источник


Ответы (2)


Если вы хотите переопределить нажатие ссылок в WebView, вы можете использовать shouldOverrideUrlLoading метод WebViewClient .

webView.setWebViewClient(new WebViewClient(){
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        return true;
    }
});
person Rajesh    schedule 26.02.2013
comment
Это загрузка URL-адреса в самом веб-представлении. орех, я хочу, чтобы он вообще не перемещался. - person Sanober Malik; 26.02.2013
comment
Я попробовал ваш код. Ссылки не открывают новую страницу, но если есть кнопка, то она перенаправляет на другую страницу. Я хочу, чтобы никакое взаимодействие с веб-представлением было невозможно, кроме прокрутки - person Sanober Malik; 26.02.2013
comment
Я не понимаю смысла отключать взаимодействие пользователя в WebView с интерактивными элементами. Однако вы можете добиться того, чего хотите, также реализуя shouldOverrideKeyEvent или используя макет, в котором WebView находится под прозрачным элементом представления наложения, который получает все сенсорные события. Затем вы можете иметь как наложение, так и WebView в ScrollView. - person Rajesh; 26.02.2013
comment
Не работает для меня! похоже, что есть проблема с методом shouldOverrideUrlLoading, поскольку он работает для эмулятора, но не для реального устройства. А также могут быть некоторые проблемы с этим, так как этот метод теперь переопределен. - person Killer; 01.05.2017

просто добавьте это в свой веб-просмотр в макете android:focusableInTouchMode="false"

person bilekmecik    schedule 14.08.2015