首页 > 科技 >

🚀 startActivityForResult用法 📱

发布时间:2025-04-01 04:25:23来源:

在Android开发中,`startActivityForResult()` 是一个非常实用的方法,用于启动一个新的Activity并等待其返回结果。简单来说,就是从当前页面跳转到另一个页面,等对方处理完后带回数据。✨

首先,你需要调用 `startActivityForResult(intent, requestCode)` 来启动目标Activity。其中,`intent` 是你设置的意图,`requestCode` 是请求码,用来标识这次请求。比如:

```java

Intent intent = new Intent(this, TargetActivity.class);

startActivityForResult(intent, 100);

```

当目标Activity完成任务后,会通过 `setResult()` 返回结果,并调用 `finish()` 结束自身。此时,原Activity会回调 `onActivityResult()` 方法,接收返回的数据。例如:

```java

@Override

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

super.onActivityResult(requestCode, resultCode, data);

if (requestCode == 100 && resultCode == RESULT_OK) {

String result = data.getStringExtra("result");

// 处理返回值

}

}

```

这种方式非常适合需要交互的场景,比如选择图片或拍照。💡

⚠️ 注意:从API 26开始,推荐使用 `startActivityForResult()` 的替代方案——`registerForActivityResult()`,以提高灵活性和性能哦!💪

免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。