如何创建全局警报对话框

use*_*739 1 android android-alertdialog

我想为我的一些活动制作一个"全局"警报对话框.我的意思是我创建了一个扩展的类,Activity它还为警报对话框创建了一个函数,该函数包含两个参数(消息和标题).

public class MyDialogAlert extends Activity {

public void createDialog(String title, String message)
{
    new AlertDialog.Builder(this)
    .setTitle(title)
    .setMessage(message)
    .setPositiveButton("yes", new OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
            //(e.g) open another activity
        }
    })
    .setNegativeButton("no", new OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
            //some stuff ..
        }
    })
    .show();
}
Run Code Online (Sandbox Code Playgroud)

}

如何在不同的活动中调用此函数并更改它的负面和正面按钮以执行除上述类中最初定义的操作之外的其他操作?

谢谢您的帮助 :)

Fin*_*ark 5

您可以创建具有静态方法的sperate类,以显示任何活动的对话框

public class DialogCaller {

public static void showDialog(Context context,String title,String message, 
        DialogInterface.OnClickListener onClickListener) {

    AlertDialog.Builder dialog = new AlertDialog.Builder(context);
    dialog.setTitle(title);
    dialog.setMessage(message);
    dialog.setPositiveButton("Ok",onClickListener);
    dialog.setNegativeButton("Cancel",null);
    dialog.show();
}
}
Run Code Online (Sandbox Code Playgroud)

调用方法就像这样

   DialogCaller.showDialog(this,"title","message",new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {

        }
    });
Run Code Online (Sandbox Code Playgroud)