Android onBackPressed()在一个方法里面

时间:2012-09-05 09:03:21

标签: android android-activity

我有一个Activity类,里面有一些方法。我想在onBackPressed()中实现method2,因为我有一个我想要释放的重要变量。我不能/不用更大的范围来创建这个变量,我不能在method2中释放这个变量,因为我想用后退按钮终止应用程序和方法2的执行。

public  class example extends Activity {
    public void onCreate(Bundle savedInstanceState) {
        method1();
    }

    public method 1 {
        //take some input and assign in a variable.
        method2(variable); 
    }

    public method2 {
        // do something with the variable that take before at method 1
        // and finally press back button
        onBackPressed(){}
        //free variable , finish ();
    }
}   

如您所知,我无法仅在活动区域​​覆盖方法内的onBackPressed()。你能为我提供一个解决方案吗?

1 个答案:

答案 0 :(得分:4)

您应该覆盖活动范围中的onBackPressed()方法,并从您的方法中调用它。

@Override
public void onBackPressed()
{
    super.onBackPressed();
    // Do your things.
}

public void method()
{
    onBackPressed();
}

如果您想在onBackPressed方法中添加一些复杂的逻辑,只需创建另一个带参数的逻辑。

public void myOnBackPressed(int param1, String param2)
{
    // Do your complex logic.
    onBackPressed();
}

public void method()
{
    myOnBackPressed(myInt, myString);
}