如何从另一个类调用super()?

时间:2014-03-27 20:51:37

标签: java android

我有这个方法:

@Override
public void onBackPressed() {   

    AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this).create();
    alertDialog.setCancelable(false);
    alertDialog.setTitle("Sair");
    alertDialog.setMessage("Do you wanna leave?");
    alertDialog.setButton(AlertDialog.BUTTON_POSITIVE, "Yes", new DialogInterface.OnClickListener() {
          public void onClick(DialogInterface dialog, int which) {
              dialog.dismiss();
              super.onBackPressed();
          }                  
         });

    alertDialog.show();
}

此方法给出了以下错误:

The method onBackPressed() is undefined for the type Object.

如何调用此超级方法?

2 个答案:

答案 0 :(得分:3)

您需要对附上课程进行限定:EnclosingClass.super.onBackPressed();我不是100%确定适用于super但适用于this

答案 1 :(得分:1)

你可以使函数静态并静态调用它,或者你可以获取它的实例(可能需要使它成为单例)并使用它。