OnActivityResult


在Android应用开发中,`OnActivityResult` 是一个关键的生命周期方法,它用于处理从一个Activity启动另一个Activity后返回的结果。当我们在一个Activity中启动另一个Activity并期待返回数据时,我们通常会使用`startActivityForResult()` 方法,然后在目标Activity完成时,系统会调用源Activity的`OnActivityResult()` 方法来传递返回的数据。 `OnActivityResult` 方法有两个参数:`requestCode` 和 `resultCode`。`requestCode` 是我们在启动目标Activity时设置的,用于区分不同的请求;`resultCode` 表示目标Activity的执行结果,通常为`RESULT_OK`(表示成功)或`RESULT_CANCELED`(表示取消)。此外,还有一个`Intent` 参数,它携带了从目标Activity返回的数据。 `putExtra` 是`Intent` 类的一个方法,用于在Intent对象中添加额外的数据。在启动目标Activity时,我们可以使用`putExtra()` 将数据(如字符串、整型、浮点型、布尔值等)附加到Intent中,以便在目标Activity中使用。例如: ```java Intent intent = new Intent(this, TargetActivity.class); intent.putExtra("key", "value"); startActivityForResult(intent, REQUEST_CODE); ``` 在目标Activity中,我们可以通过`setResult()` 方法设置返回的结果,并使用`putExtra()` 添加数据到Intent中: ```java Intent resultIntent = new Intent(); resultIntent.putExtra("key", "modifiedValue"); setResult(RESULT_OK, resultIntent); finish(); ``` 源Activity的`OnActivityResult` 方法会接收到这些数据: ```java @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) { String returnedValue = data.getStringExtra("key"); // 处理返回的数据 } } ``` `OnActivityResult` 和`putExtra` 结合使用,使得在Android应用的不同Activity之间传递数据变得简单且灵活。这种机制广泛应用于各种场景,如选择照片、获取地理位置、实现登录验证等。 在提供的压缩包文件"**OnActivityResult**"中,可能包含了相关的示例代码或者教程,通过学习和理解这些内容,开发者可以更好地掌握如何在实际项目中使用`OnActivityResult` 和`putExtra` 来实现数据交换。这个知识点对于任何Android开发者来说都是至关重要的,因为它涉及到Activity间的通信,是构建复杂应用不可或缺的一部分。





























































































































- 1
- 2
- 3
- 4
- 5
- 6
- 9


- 粉丝: 1378
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 该项目为一个集数据抓取与展示一体的ACM队员数据系统,基于Django、python实现。.zip
- 辅助背单词软件,基于艾宾浩斯记忆曲线(其实背啥都行)的Python重构版,增加在线查词与翻译等功能.zip
- 基于C开发的命令行输入输出流重定向与实时分析工具_支持快捷按键和文本框输入实时过滤计算分析多格式结果呈现文本提示弹窗曲线表格支持批量测试和日志抓取_用于开发调试协议分.zip
- 各种有用的web api 基于Golang, Python(tornado django scrapy gevent).zip
- 华南理工大学找到卷王,基于 Python 的综测系统数据爬虫.zip
- 湖南大学(HNU)数据库系统课程大作业 ATM系统 前端基于Python的PyQt5,后端基于MySQL.zip
- (新闻爬虫),基于python+Flask+Echarts,实现首页与更多新闻页面爬取
- 基于 Flask + Requests 的全平台音乐接口 Python 版.zip
- 基于 FFmpeg ,使用 Python 开发的批量媒体文件格式转换器。.zip
- 基于 CAI 的 OneBot Python 实现.zip
- 基于 nonebot2 开发的消息交互式 Python 解释器,依赖 docker SDK.zip
- 基于 Python 3 + Django 2 开发的用于适配手机的简单 Jenkins 构建平台.zip
- Python 语言的爬楼梯问题实现-计算爬到第 n 级台阶的方法数
- 基于 Napcat, NcatBot, JMComic-Crawler-Python 的 QQ 机器人。.zip
- 基于 Python Tornado 的博客程序 (练习).zip
- 基于 Python 3.5 + Django 2.0 开发的简单个人博客.zip


