我有一个警报对话框,它不显示我使用“setIcon”设置的图标。
我使用Android Studio和Android模拟器API 19/ Android 4.4.2。
我可以运行应用程序,对话框显示没有图标,没有错误。
但Android Studio标记了包含“setIcon”的行,并为我提供了“引入局部变量”和“将方法调用链制作成调用序列”
所以我的问题是:为什么不显示图标?
我的代码:
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();
6条答案
按热度按时间7kjnsjlb1#
你的标题是空的,所以android不会显示它,因此也不会显示任何图标。
将其设置为空字符串:
laximzn52#
您应该使用类似于以下内容的内容:
试试这个:)
b4qexyjb3#
您只需要添加标题,因为图标的位置在标题旁边。
h7appiyu4#
可能您还需要设置标题。如果您不喜欢新的布局,您可能想看看这个question。
vdzxcuhz5#
您可以使用
dialogBuiler.setView(your_custom_layout)
例如custom_dialog_layout. xml,您可以根据自己的选择进行美化
Utils.java
MyActivity.java
您可以添加复选框或其他操作
smdnsysy6#
AlertDialog.Builder alert =新建的AlertDialog.Builder(主活动.this);
如果你想显示图标,首先你必须有一个标题