2.Intent返回数据

1. Activity1中设定startActivityForResult方法

Button btn1 = findViewById(R.id.btn1);
btn1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
        //设置方法,1是唯一值
        startActivityForResult(intent, 1);
    }
});

2. Activity2中设定setResult方法

Button btn2=findViewById(R.id.btn2);
btn2.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent intent=new Intent();
        intent.putExtra("data_return","hello FirstActivity");
        //返回数据
        setResult(RESULT_OK,intent);
        finish();
    }
});

3. Activity1中设定onActivityResult事件

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    switch (requestCode) {
        case 1:
            if (resultCode == RESULT_OK) {
                String returnData = data.getStringExtra("data_return");
                Log.d("FirstActivity", returnData);
            }
            break;
        default:
    }
}



发布了30 篇原创文章 · 获赞 2 · 访问量 6437

猜你喜欢

转载自blog.csdn.net/yaochaohx/article/details/80197181
今日推荐