两个Activity之间用接口
时间: 2024-05-09 22:21:06 浏览: 8
在Android中,可以使用接口来实现两个Activity之间的通信。具体步骤如下:
1. 定义一个接口,包含需要传递的数据和方法。
```
public interface DataListener {
void onDataReceived(String data);
}
```
2. 在要接收数据的Activity中实现该接口,并在onCreate方法中将该Activity传递给发送数据的Activity。
```
public class ReceiverActivity extends AppCompatActivity implements DataListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_receiver);
SenderActivity senderActivity = new SenderActivity();
senderActivity.setDataListener(this);
}
@Override
public void onDataReceived(String data) {
// 处理接收到的数据
}
}
```
3. 在发送数据的Activity中定义一个DataListener类型的变量,并在需要传递数据的地方调用该接口的方法。
```
public class SenderActivity extends AppCompatActivity {
private DataListener mDataListener;
public void setDataListener(DataListener listener) {
mDataListener = listener;
}
private void sendData() {
String data = "Hello World";
mDataListener.onDataReceived(data);
}
}
```
这样,当发送数据的Activity中调用sendData方法时,就会触发接收数据的Activity中的onDataReceived方法,从而实现两个Activity之间的通信。