onActivityResult 使用无效
时间: 2024-04-22 09:23:56 浏览: 84
`onActivityResult` 是用于获取其他 Activity 返回的结果的方法,可以在当前 Activity 中重写该方法来获取返回的数据。如果你发现 `onActivityResult` 使用无效,可能是以下原因:
1. 没有正确设置请求码(requestCode):在调用 `startActivityForResult` 启动另一个 Activity 时,需要传入一个请求码,用于标识该请求。在 `onActivityResult` 中可以根据请求码来判断返回的结果是否为该请求的结果。如果设置的请求码不正确,可能导致返回的结果无法正确处理。建议使用常量来定义请求码,避免出现不同的请求码导致问题。
2. 没有正确设置返回结果(resultCode):在另一个 Activity 中处理完相关逻辑后,需要通过 `setResult` 方法设置返回结果。如果没有正确设置返回结果,可能导致 `onActivityResult` 接收不到任何数据。
3. 另一个 Activity 没有正确返回结果:在另一个 Activity 中处理完相关逻辑后,需要通过 `setResult` 方法设置返回结果,并调用 `finish` 方法来关闭 Activity。如果没有正确返回结果,可能导致 `onActivityResult` 接收不到任何数据。
4. `onActivityResult` 中的代码有误:如果 `onActivityResult` 中的代码有误,可能导致无法正确处理返回的数据。建议检查 `onActivityResult` 中的代码是否正确,是否存在语法错误等问题。
如果以上步骤都检查过了,但是仍然无法使用 `onActivityResult`,可以尝试使用 `startActivity` 方法来启动另一个 Activity,然后在返回时使用 `onNewIntent` 方法来获取返回的数据。
阅读全文
相关推荐










