是的,Android Activity 可以传递数据。 Android 允许您使用 Intent 对象在不同的 Activity 之间传递数据。 以下是一些常见的数据传递方法:
- 通过意图传递基本数据类型:
意图 意图 = 新意图(FirstActivity。此, SecondActivity.class);
intent.putExtra("key", value); // key 是一个string类型,value为要传递的数据
startActivity(intent);
在SecondActivity中,可以在SecondActivity中检索传递的数据有以下几种方式:
字符串 值 = getIntent().getStringExtra("key");
- 通过意图传输Parcelable对象:
首先,您需要创建一个实现Parcelable接口的类:
public class MyParcelable 实现 可打包 {
private int data;
private 字符串文本;
//省略构造函数、getter、setter方法
@Override
公共 int 描述内容() {
返回 0;
}
@Override
public void writeToParcel(包裹目的地,int flag) {
dest.writeInt(data) ;
dest.writeString(text);
}
公共 静态 最终 Creator CREATOR = 新 创建者() {
@Override
公共 MyParcelable createFromParcel(包裹进入) {
返回 新 MyParcelable(in); ] @Override
public MyParcelable[] newArray( int 大小) {
返回 新 MyParcelable[大小];
}
};
}
接下来,在 FirstActivity 中,将 MyParcelable 对象传递给 SecondActivity。
MyParcelable myParcelable = 新 MyParcelable();
myParcelable.setData(1);
myParcelable.setText("你好");
意图 意图 = 新 意图(FirstActivity。这个, SecondActivity.class);
intent.putExtra("parcelable_key", myParcelable);
startActivity(intent);
SecondActivity 允许您通过以下方式检索传递的 MyParcelable 对象:
MyParcelable myParcelable = getIntent().getParcelableExtra("parcelable_key");
- 通过意图传输可序列化对象:
实现可序列化接口的类可以通过Masu进行传递。 例如,如果要将 ArrayList 传递给另一个 Activity:
ArrayList list = new ArrayList();
list.add("item1 ");
list.add("item2");
意图 意图 = 新 意图(FirstActivity.这个, SecondActivity.class );
intent.putExtra("serializing_key", list);
startActivity(intent);
在SecondActivity中,可以通过以下方式获取传递的ArrayList:
ArrayList list = getIntent().getSerializedExtra("serializing_key");
以上内容来源于网络,代表本站所有观点,并非一物。 欢迎关注:zhujipindao.com
评论前必须登录!
注册