Android Dialog OnClick 方法不起作用



我在此类文件中构建了一个 AlertDialog,对话框出现正常,但是执行单击时这些方法似乎没有调用。我做错了什么?感谢您的帮助!

//AlertView Builder
    final AlertDialog.Builder builder;
    builder = new AlertDialog.Builder(this);
    builder.setTitle(" ");
    builder.setIcon(R.drawable.banner);
    builder.setMessage("Share this picture using any of the below!");
    builder.setPositiveButton("Email",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                  System.out.print("Emailing...");
                }
            });
    builder.setNeutralButton("Facebook",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    System.out.print("Facebooking...");
                }
            });
    builder.setNegativeButton("Twitter",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    System.out.print("Tweeting...");
                }
            });

你期望它做什么? 你在那些块中是否有任何你现在没有的代码?

默认情况下,Android 不会将 System.out.print(); 用于任何用途 - 使用 Log:

Log.d(getClass().getName(),"Facebooking...");

尝试以下代码作为setNeutralButtonsetPositiveButtonsetNegativeButton不适用于特定的 API。

//AlertView Builder
    final AlertDialog.Builder builder;
    builder = new AlertDialog.Builder(this);
    builder.setTitle(" ");
    builder.setIcon(R.drawable.banner);
    builder.setMessage("Share this picture using any of the below!");
    builder.setButton1("Email",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                  System.out.print("Emailing...");
                }
            });
    builder.setButton2("Facebook",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    System.out.print("Facebooking...");
                }
            });
    builder.setButton3("Twitter",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    System.out.print("Tweeting...");
                }
            });

希望对你有帮助...

最新更新