Adnroid 返回数据给上一个Activity

跳转到下一个指定活动时使用startActivity( )

但需要如果需要在下一个活动销毁的时候返回一个数据则需要使用  startActivityForResult(Intent,requestCode);

在当前活动中添加

 Intent intent=new Intent(MainActivity.this,SecondActivity.class);
       startActivityForResult(intent,1);
       // 1为请求码,用于识别


 @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        /**
         * 由于是使用startActivityForResult()方法进行跳转,
         * 跳转后的活动被销毁时会回调上一个活动的onActivityResult()方法
         * requestCode是指使用startActivityForResult()方法时使用的请求码
         * resultCode是指setResult()的key,一般使用RESULT_OK,data即为key对应的值
         */
        switch (requestCode)
        {
            case 1:
                if (resultCode==RESULT_OK) {
                    String s=data.getStringExtra("data_return");
                    textView.setText(s);
                }

        }
    }

在被跳转的活动中添加

 public void onBackPressed()//重写活动的返回按钮
    {
        Intent intent=new Intent();
        intent.putExtra("data_return","ok");
        setResult(RESULT_OK,intent);
        finish();
    }

 

你可能感兴趣的:(Android学习,android)