我试图显示带有AdvancedWebView组件的html文件。但问题是,它显示行
的错误public class MainActivity extends Activity implements AdvancedWebView.Listener {
错误说,
错误:(18,8)错误:MainActivity不是抽象的,也不是 在Listener中覆盖抽象方法onPageStarted(String,Bitmap)
这是我的 MainActivity.java 文件。
package com.test.test3;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Toast;
import im.delight.android.webview.AdvancedWebView;
public class MainActivity extends Activity implements AdvancedWebView.Listener {
private AdvancedWebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = (AdvancedWebView) findViewById(R.id.webview);
mWebView.setListener(this, this);
mWebView.setGeolocationEnabled(false);
mWebView.setMixedContentAllowed(true);
mWebView.setCookiesEnabled(true);
mWebView.setThirdPartyCookiesEnabled(true);
mWebView.addHttpHeader("X-Requested-With", "");
mWebView.loadUrl("file:///android_asset/index.html");
}
}
我在这里做错了什么或错过了什么?
答案 0 :(得分:3)
如果按类实现接口并且此类不是抽象的,则必须覆盖所有接口方法。
您的MainActivity
实施this interface:
public interface Listener {
void onPageStarted(String url, Bitmap favicon);
void onPageFinished(String url);
void onPageError(int errorCode, String description, String failingUrl);
void onDownloadRequested(String url, String suggestedFilename, String mimeType, long contentLength, String contentDisposition, String userAgent);
void onExternalPageRequest(String url);
}
但不会覆盖它的方法。
您需要覆盖所有AdvancedWebView.Listener
方法:onPageStarted
,onPageFinished
,onPageError
,onDownloadRequested
,onExternalPageRequest
。