我有一个应用程序,我经常在我的所有片段中使用对话框。 我在fragmetns中使用对话框主要用于显示来自服务器的消息。
AlertDialog ad = new AlertDialog.Builder(getActivity()).create(); ad.setCancelable(false);
ad.setTitle(title);
ad.setMessage(message);
ad.setButton(context.getString(R.string.text), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
} });
我可以创建这是我的MainActivty并通过我的所有片段使用它吗? 请帮帮我。
答案 0 :(得分:3)
创建一个公共类,如下所示。
public class UtilsDialog {
public static void promtDialog(Context context,String title, String message){
AlertDialog ad = new AlertDialog.Builder(context).create(); ad.setCancelable(false);
ad.setTitle(title);
ad.setMessage(message);
ad.setButton(context.getString(R.string.text), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
} });
ad.show();
}
}
并在片段中调用promtDialog方法。
UtilsDialog.promtDialog(getActivity(), "add your title here", "add your message here");
答案 1 :(得分:1)
创建一个方法,如:
public void showAlert()
{
AlertDialog ad = new AlertDialog.Builder(getActivity()).create(); ad.setCancelable(false);
ad.setTitle(title);
ad.setMessage(message);
ad.setButton(context.getString(R.string.text), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
} });
}
并在需要的地方调用此方法,例如MainActivity.showAlert();
答案 2 :(得分:0)
请检查
public void showAlert(String title,String message){
AlertDialog ad = new AlertDialog.Builder(this);
ad.create().setCancelable(true).setTitle(title).setMessage(message);
ad.setButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
} });
}
从片段
调用((HomeActivity)getActivity()).showAlert("My title","My Message");