上个页面的返回值
- 上个页面的返回值
- 简介
- 正文
- 扩展阅读
目标人群:没有基础的安卓初学者
知识点:onActivityResult方法的使用
目标:接收上个界面的返回值,并显示在当前页面
简介
- onActivityResult的说明
- requestCode、resultCode参数的说明
正文
在之前的文章中,我们已经了解到了如何传递数据给新的页面,下面让我们来共同学习一下如何接收从新页面返回的数据:
1.启动一个新的页面代码如下:
Intent intent = new Intent(this, SecondActivity.class);
int requestCode=100;
startActivityForResult(intent, requestCode);
- requestCode为请求码,当收到返回的Intent参数时,回调方法onActivityResult提供了该请求码,以便正确识别结果并确定如何处理它。
- 请注意此处启动新页面调用的方法是 startActivityForResult 而非startActivity
2.在SecondActivity页面中对应的代码如下:
Intent intent = new Intent();
intent.putExtra("num", "123");
finish();
setResult(RESULT_OK, intent);
- RESULT_OK为结果码,当收到返回的Intent参数时,回调方法onActivityResult提供了该结果码,以便正确识别结果并确定如何处理它。
3.回到第一个页面后,对应的代码如下:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// 发起新页面请求时的请求码
if (requestCode == 100) {
// 确认结果码
if (resultCode == RESULT_OK) {
//上一页面传递的数据
String num = data.getStringExtra("num");
tv_num.setText(num);
}
}
}
- 从页面逻辑上来讲,建议对requestCode和resultCode进行判断,但这并非是必须的。
扩展阅读
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-25 17:56:43