MainActivity不是抽象的,不会覆盖Listener中的抽象方法onPageStarted(String,Bitmap)

时间:2018-04-30 11:06:03

标签: java android

我试图显示带有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");
    }
}

我在这里做错了什么或错过了什么?

1 个答案:

答案 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方法:onPageStartedonPageFinishedonPageErroronDownloadRequestedonExternalPageRequest