gpt4 book ai didi

java - 使用 MVP 显示对话框

转载 作者:行者123 更新时间:2023-12-02 10:52:38 25 4
gpt4 key购买 nike

我有一个名为 ILoginView 的 View ,在它上面有一个 showDialog(String message) ,在我的 LoginPresenter 上我有对 api 的调用,所以如果失败我会执行 view.showDialog( context.getString(R.string.response_server_error)); 所以我的问题是,当我在 mainActivity 上实现接口(interface)并且我必须重写此方法时,有正确的方法来放置:

AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
alertDialogBuilder.setMessage("Click on Image for tag");
alertDialogBuilder.setPositiveButton("Ok",
new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface arg0, int arg1) {
}
});

AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();

最佳答案

如果我错了,请纠正我,但如果我正确理解您的问题,您是在询问在哪里放置代码以在 MVP 模式中显示 AlertDialog 相关代码。通常的一般想法是 Presenter 不应该有任何 Android 特定代码。它应该只是一个 POJO 类。它使 Presenter 类中的业务逻辑更容易仅使用 JUnit 测试进行测试。所以像下面这样的东西应该有效:

内部演讲者:

void onServerCallErrorReturned() {
view.showErrorDialog();
}

内部 Activity :

void showErrorDialog() {
// Here your AlertDialog code can go.
showDialog(getString(R.string.response_server_error));
}

void showDialog(String message) {
}

希望这有帮助。

关于java - 使用 MVP 显示对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52046567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com