Android Activity间高效数据传递:基础类型与Bundle示例
5星 · 超过95%的资源 22 浏览量
更新于2024-09-04
收藏 46KB PDF 举报
"在Android开发中,Activity之间的参数传递是一项常见的任务,特别是在导航或数据共享过程中。本文将深入探讨两种主要的参数传递方法:简单数据类型和Bundle数据包。
1. 传递简单数据类型
当需要传递的基础数据类型如字符串、整数等时,可以使用`putExtra()`方法。例如,在Activity A中,通过`Intent` `i`,我们将字符串"我是国人"作为键值对`"data"`传递:
```java
i.putExtra("data", "我是国人");
```
在Activity B中,通过`getIntent().getStringExtra("data")`获取并显示这个字符串:
```java
tv.setText(i.getStringExtra("data"));
```
这种方法适用于数据量小且不需要复杂结构的情况。
2. 传递数据包Bundle
对于更复杂的数据结构或者需要存储多个变量的情况,推荐使用`Bundle`。在Activity A中,创建一个新的`Bundle`,添加键值对,如名字("name", "qll")和年龄("age", 3),然后将`Bundle`作为额外数据(`extra`)传递:
```java
Bundle bundle = new Bundle();
bundle.putString("name", "qll");
bundle.putInt("age", 3);
i.putExtra("data", bundle);
```
在Activity B中,接收`Bundle`时,可以使用`getBundle()`而不是`getExtras()`,然后根据键获取对应的值:
```java
Bundle date = i.getBundle("data");
tv.setText(date.getString("name")); // 获取名字
editText.setText(String.valueOf(date.getInt("age"))); // 获取年龄
```
使用`Bundle`能更好地管理复杂的数据,同时保持代码整洁。
总结,Android中的Activity间参数传递主要有两种策略:直接传递简单数据类型(适合轻量级数据)和使用Bundle存储和传递数据结构(适合大量或复杂数据)。理解并灵活运用这些方法,有助于实现应用程序间的高效数据交换。"
2013-06-15 上传
2020-08-25 上传
2021-01-20 上传
2017-03-08 上传
2017-05-28 上传
2014-07-22 上传
2020-09-01 上传
2017-03-21 上传
weixin_38518006
- 粉丝: 3
- 资源: 996
最新资源
- Haskell编写的C-Minus编译器针对TM架构实现
- 水电模拟工具HydroElectric开发使用Matlab
- Vue与antd结合的后台管理系统分模块打包技术解析
- 微信小游戏开发新框架:SFramework_LayaAir
- AFO算法与GA/PSO在多式联运路径优化中的应用研究
- MapleLeaflet:Ruby中构建Leaflet.js地图的简易工具
- FontForge安装包下载指南
- 个人博客系统开发:设计、安全与管理功能解析
- SmartWiki-AmazeUI风格:自定义Markdown Wiki系统
- USB虚拟串口驱动助力刻字机高效运行
- 加拿大早期种子投资通用条款清单详解
- SSM与Layui结合的汽车租赁系统
- 探索混沌与精英引导结合的鲸鱼优化算法
- Scala教程详解:代码实例与实践操作指南
- Rails 4.0+ 资产管道集成 Handlebars.js 实例解析
- Python实现Spark计算矩阵向量的余弦相似度