关注分享主机优惠活动
国内外VPS云服务器

Android Activity可以传递数据吗?

是的,Android Activity 可以传递数据。 Android 允许您使用 Intent 对象在不同的​​ Activity 之间传递数据。 以下是一些常见的数据传递方法:

  1. 通过意图传递基本数据类型:
意图 意图 = 意图(FirstActivity。, SecondActivity.class);
intent.putExtra("key", value); // key 是一个string类型,value为要传递的数据
startActivity(intent);

在SecondActivity中,可以在SecondActivity中检索传递的数据有以下几种方式:

字符串  = getIntent().getStringExtra("key");
  1. 通过意图传输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");
  1. 通过意图传输可序列化对象:
    实现可序列化接口的类可以通过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

未经允许不得转载:主机频道 » Android Activity可以传递数据吗?

评论 抢沙发

评论前必须登录!