Android studio中如何将多个activity中的数据传递到同一activity中
时间: 2024-02-21 22:00:11 浏览: 65
在 Android 中,可以使用 Intent 对象来在 Activity 之间传递数据。为了将多个 Activity 中的数据传递到同一个 Activity 中,可以在每个 Activity 中创建一个 Intent 对象,然后使用 putExtra() 方法将数据添加到 Intent 中,最后在目标 Activity 中使用 getIntent() 方法获取 Intent 对象,然后使用 getXXXExtra() 方法获取数据,其中 XXX 表示要获取的数据类型,如 getStringExtra()、getIntExtra() 等。
具体步骤如下:
1. 在源 Activity 中创建一个 Intent 对象,并使用 putExtra() 方法将数据添加到 Intent 中。
```java
Intent intent = new Intent(this, TargetActivity.class);
intent.putExtra("data1", "Hello");
intent.putExtra("data2", 123);
startActivity(intent);
```
2. 在目标 Activity 中使用 getIntent() 方法获取 Intent 对象,并使用 getXXXExtra() 方法获取数据。
```java
Intent intent = getIntent();
String data1 = intent.getStringExtra("data1");
int data2 = intent.getIntExtra("data2", 0); // 0 为默认值,如果获取不到 data2,则返回默认值
```
注意:在使用 putExtra() 方法添加数据时,可以添加基本数据类型、String 类型、Parcelable 类型等数据,但不能添加自定义的对象,因为 Intent 对象在传递时需要将数据序列化和反序列化,而自定义对象可能无法正确地序列化和反序列化。如果需要传递自定义对象,则可以考虑使用 Bundle 对象或者通过其他方式实现。
阅读全文