我正在尝试设置一个自定义 AlertDialog,它有 2 个按钮,取消按钮和肯定按钮。我需要做到这一点,以便单击肯定按钮后,我可以更改文本,而不关闭对话框。
大致流程是肯定按钮会显示“发送”,单击后它将更改为“发送...”,然后代码将向我们的服务器发送一些数据,如果响应为 true,则关闭对话框,如果为 true,则关闭对话框false,或超时等显示错误消息(Toast)并保持对话框打开。
我有用于向服务器发送数据、处理响应等的代码,我只是想不出如何编辑 AlertDialog 类来实现这一点。有谁知道我该怎么做?
当前测试代码:
AlertDialog.Builder b = new AlertDialog.Builder(getActivity());
b.setView(getActivity().getLayoutInflater().inflate(R.layout.dialog_single_text, null));
b.setTitle("Forgotten Password");
b.setMessage("Please enter your email");
b.setPositiveButton("Send", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(getActivity(), "Sending...", Toast.LENGTH_SHORT).show();
}
});
b.create().show();
您可以将 onShowListener 添加到 AlertDialog
d.setOnShowListener(new DialogInterface.OnShowListener() {
@Override
public void onShow(DialogInterface dialog) {
Button b = d.getButton(AlertDialog.BUTTON_POSITIVE);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// TODO Do something
//Dismiss once everything is OK.
d.dismiss();
}
});
}
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)