onBackPressed()覆盖错误



我想在我的实时壁纸设置上实现Appbrain填隙广告,
我按照上面给出的步骤-http://www.appbrain.com/info/sdk-docs/interstitial.html

@Override
public void onBackPressed() {
    AppBrain.getAds().maybeShowInterstitial(this);
    finish();
} 

注意:onBackPressed()上的eclipse红色下划线

日食给出错误:

SBLiveWallpaper类型的onBackPressed()方法必须重写或实现超类型方法

一个快速解决方案是:删除@override annotation

解决方案是什么?

更新:这是屏幕截图:http://prntscr.com/558my0

由于eclipse本身为您提供了捕获异常解决方案的提示

SBLiveWallpaper类型的onBackPressed()方法必须重写或实现超类型方法

SBLiveWallpaper必须扩展具有onBackPressed()方法的Activity类,因此只有在直接或间接扩展Activity时才能覆盖该方法。

类似:

public SBLiveWallpaper extends Activity {
    @Override
    public void onBackPressed() {
        AppBrain.getAds().maybeShowInterstitial(this);
        finish();
    }
}

调用super.onBackPressed();不要删除@override。

@Override
public void onBackPressed() {
super.onBackPressed();
    AppBrain.getAds().maybeShowInterstitial(this);
    finish();
} 

如您提供的链接中所述。

@Override注释所做的只是让您知道该方法应该覆盖该方法的一个超类实现。如果你得到一个错误,这意味着它没有覆盖任何内容,它只是一个普通的方法。检查您是否实现了正确的接口或扩展了包含onBackPressed方法的正确超类。

添加super.onBAckPress();代替finish()。

相关内容

  • 没有找到相关文章

最新更新