startActivityForResult
开启目标activity,等待activity关闭,然后返回数据
第一个界面跳转到第二个界面,等待第二个界面关闭时,返回给第一个界面数据
1. 采用一种特殊的方式开启Activity
startActivityForResult(intent, 0);
2. 在开启的第二个Activity里面设置数据
Intent data = new Intent();
data.putExtra("content", content);
setResult(0, data);
3. 记得关闭新开启的第二个activity
finish();
4. 在第一个Activity里面,重写一个方法,获取返回的数据
protected void onActivityResult(int requestCode, int resultCode,
Intent data) {
//data就是返回的intent,里面包含有数据
}
示例代码:
A. 用获取返回值的方式开启activity startActivityForResult(intent, 1); B. 设置返回的数据 Intent intent = new Intent(); intent.putExtra("myData", myData); setResult(1, intent); C. 关闭 finish(); D 获取返回的数据 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); String myData= data.getStringExtra("myData"); mTextView.setText(myData); }
最后,关注【码上加油站】微信公众号后,有疑惑有问题想加油的小伙伴可以码上加入社群,让我们一起码上加油吧!!!