2024年3月14日发(作者:)

Activity之间的通信

Activity 之间的通信是通过Intent实现的

1.由activity A 到B -- 调用同一个应用下的activity

a.普通方式

流程:创建一个Intent实例 ,通过Intent指定从哪个Activity到哪个Activity,然

后 A实例对象.startActivity(Intent实例) eg:

Intent intent = new Intent(,);

你也可以传参数到目标Activity

ra("key",value);----有个中重载,如果你要传的值是自己定义的类对象,

那么这个类必须实现

izable 接口

A的实例对象.startActivity(intent);

b.启动带返回值的Activity

既然能从A传参数到B,肯定也能从B返回数据给A

流程: 创建一个Intent实例,然后A的实例对象.startActivityForResult(Intent实

例,int类型的请求标示);

重写A类的onActivityResult(int requestCode, int resultCode, Intent data) ;

注意:int类型的请求标示必须是唯一的,通常情况下 我们使用布局文件的int表示

方式作为请求标示

eg:

//启动 带返回值的activity

Intent intent = new Intent(,);

A的实例对象.startActivityForResult(intent, );

//在B类中 指定返回值

Intent intent=B的实例对象.getIntent().putExtra("key","hello");

B的实例对象.setResult(20,intent);

//重写A类的onActivityResult(int requestCode, int resultCode, Intent data) 接

收数据

@Override