使用后退按钮时捕获切换活动事件

时间:2018-01-30 18:44:54

标签: android android-activity

我的应用中有两项活动。我们称之为第一第二

FirstActivity是启动活动。我正在使用FirstActivity方法从SecondActivity切换到startActivity()。现在,如果我通过按后退按钮从FirstActivity返回SecondActivity,我怎样才能在FirstActivity内捕捉到该事件。

例如,如果我使用startActivityForResult方法启动第二个活动,我可以使用onActivityResult方法捕获事件。

1 个答案:

答案 0 :(得分:0)

通过startActivityForResult:它将通过startActivityForResult提供您从下一个Activity获得的数据,通过从下一个活动中获取数据,您可以轻松找到该活动。

Intent i = new Intent(this, SecondActivity.class);
startActivityForResult(i, 1);

     @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {

    if (requestCode == 1) {
        if(resultCode == Activity.RESULT_OK){
            String result=data.getStringExtra("result");
            if(result.equals("SECOND_ACTIVITY"){
             //Action here
            }else if(result.equals("THIRD_ACTIVITY"){
             //Action here
            }else{

              }

        }
        if (resultCode == Activity.RESULT_CANCELED) {
            //Write your code if there's no result
        }
    }
}

来自您的第二项活动:

    Intent returnIntent = new Intent();
returnIntent.putExtra("result","SECOND_ACTIVITY");
setResult(Activity.RESULT_OK,returnIntent);
finish();

来自您的第三项活动:

  Intent returnIntent = new Intent();
returnIntent.putExtra("result","THIRD_ACTIVITY");
setResult(Activity.RESULT_OK,returnIntent);
finish();