我尝试从头开始构建Web视图应用程序,由于对此尚不熟悉,因此我在第22行遇到错误,因为我设置了websetting.setjavascriptenabled(true);它不接受。
错误弹出窗口
error: non-static method setJavaScriptEnabled(boolean) cannot be referenced from a static context
WebSettings.setJavaScriptEnabled(true);
我的项目设置适用于android Oreo 8.1
package net.jptechsolutions.jptechinvoice;
import android.annotation.SuppressLint;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends AppCompatActivity {
public WebView mywebview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mywebview=(WebView)findViewById(R.id.webview);
WebSettings webSettings=mywebview.getSettings();
WebSettings.setJavaScriptEnabled(true);
mywebview.loadUrl("https://*********************");
mywebview.setWebChromeClient(new WebChromeClient());
}
@Override
public void onBackPressed() {
if (mywebview.canGoBack())
{
mywebview.goBack();
}
else
{
super.onBackPressed();
}
}
答案 0 :(得分:2)
使用
webSettings.setJavaScriptEnabled(true);
代替
WebSettings.setJavaScriptEnabled(true);
您正在使用带有方法名称的类名称。将您定义的对象名称与方法名称一起使用。
答案 1 :(得分:0)
您调用WebSettings的静态功能。应该是:webSettings. setJavaScriptEnabled(true);