在软件开发中,MVP(Model-View-Presenter)是一种设计模式,用于将业务逻辑与用户界面分离。在这种模式下,消息和错误传递通常通过以下几个步骤进行:
以下是一个简单的示例,说明如何使用 MVP 将服务层消息/错误传递给更高层:
public interface OnMessageListener {
void onSuccess(String message);
void onError(String errorMessage);
}
public class MyModel {
private OnMessageListener onMessageListener;
public void setOnMessageListener(OnMessageListener onMessageListener) {
this.onMessageListener = onMessageListener;
}
public void doSomething() {
// 处理业务逻辑
if (success) {
onMessageListener.onSuccess("操作成功");
} else {
onMessageListener.onError("操作失败");
}
}
}
public class MyPresenter {
private MyModel myModel;
private MyView myView;
public MyPresenter(MyModel myModel, MyView myView) {
this.myModel = myModel;
this.myView = myView;
myModel.setOnMessageListener(new OnMessageListener() {
@Override
public void onSuccess(String message) {
myView.showMessage(message);
}
@Override
public void onError(String errorMessage) {
myView.showError(errorMessage);
}
});
}
public void doSomething() {
myModel.doSomething();
}
}
public class MyView {
public void showMessage(String message) {
// 显示成功消息
}
public void showError(String errorMessage) {
// 显示错误消息
}
}
通过这种方式,您可以在 MVP 架构中将服务层消息/错误传递给更高层。