Request Code需要如何定义
时间: 2024-05-08 16:20:55 浏览: 76
Request Code(请求码)是一个整型常量,用于标识一个Activity请求的来源,以便在结果返回时识别出是哪个Activity返回的结果。在使用 startActivityForResult() 方法启动一个Activity时,需要传递一个请求码,以便在结果返回时进行匹配。请求码的定义通常需要遵循以下规则:
1. 请求码应该是一个正整数,通常定义为静态常量。
2. 请求码应该在调用 startActivityForResult() 方法之前进行定义。
3. 请求码应该唯一,以便在结果返回时进行匹配。
例如:
```
public static final int REQUEST_CODE = 1001; // 定义请求码
Intent intent = new Intent(this, SecondActivity.class);
startActivityForResult(intent, REQUEST_CODE); // 启动Activity并传递请求码
```
在SecondActivity中,当需要返回结果时,可以使用以下代码设置返回值并关闭Activity:
```
Intent intent = new Intent();
intent.putExtra("result", "success");
setResult(RESULT_OK, intent);
finish();
```
在MainActivity中,可以通过重写onActivityResult()方法来处理返回结果:
```
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) {
String result = data.getStringExtra("result");
// 处理返回结果
}
}
```
阅读全文