Android - AlertDialog中未显示图标

时间:2015-02-23 08:51:06

标签: android

我有一个警告对话框,不会显示我使用" setIcon"。设置的图标。 我使用Android Studio和Android Emulator API 19 / Android 4.4.2。

我可以运行应用程序,对话框显示没有图标,没有错误 但Android工作室标志着包含" setIcon"并提供我"介绍局部变量"和#34;将方法调用链转换为调用序列"

所以我的问题:为什么图标没有显示?

我的代码:

AlertDialog.Builder builder = new AlertDialog.Builder(this );  

builder

.setMessage("Repeat game?")
.setIcon(android.R.drawable.ic_dialog_alert)         //<--- icon does not show
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int which) {
        //Yes button clicked, do something

    }
})
.setNegativeButton("No", null)                      //Do nothing on no
.show();

4 个答案:

答案 0 :(得分:15)

你的标题是空的,因此android不会显示它,因此也不会显示任何图标。

将其设置为空字符串:

builder.setTitle("")...<all the other stuff>

答案 1 :(得分:6)

你应该使用这样的东西:

builder.setIcon(getResources().getDrawable(android.R.drawable.ic_dialog_alert));

试试这个:)

答案 2 :(得分:1)

可能还需要设置标题。如果您不喜欢新布局,可能需要查看此question

AlertDialog.Builder builder = new AlertDialog.Builder(this );  
builder
    .setMessage("Repeat game?")
    .setTitle("")
    .setIcon(android.R.drawable.ic_dialog_alert)         //<--- icon does not show
    .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
            //Yes button clicked, do something
        }
    })
    .setNegativeButton("No", null)                      //Do nothing on no
    .show();

答案 3 :(得分:1)

您只需添加标题,因为图标的位置在标题旁边。

.setTitle("Attention")
.setIcon(android.R.drawable.ic_dialog_alert)