non-static method cannot be referenced from a static context java
Делаю WebView приложение. Пытаюсь сделать, чтобы кнопка "назад" не закрывала приложение, а возвращала на предыдущую страницу. Но на методах canGoBack() и goBack() появляется ошибка "non-static method cannot be referenced from a static context java". Как это исправить?
@Override
public void onBackPressed() {
if (WebView.canGoBack()) {
WebView.goBack();
} else {
super.onBackPressed();
}
}
Ответы (1 шт):
Вы вызываете нестатический метод как статический (через имя класса), тогда как надо вызывать метод на переменной, которая является ссылкой на WebView в разметке.
Если на уровне класса у вас нет переменной типа WebView webView, на которой можно вызвать ваши методы webView.canGoBack(), webView.goBack(), то создайте эту переменную и/или создайте её прямо в onBackPressed методе, хотя это и вызовет небольшую просадку производитеьности.