Android AlertDialog 设置标题颜色

引言

在 Android 应用程序开发中,AlertDialog 是一种常用的对话框控件,用于向用户展示重要信息或接收用户输入。默认情况下,AlertDialog 的标题颜色与应用程序主题中的颜色保持一致。然而,有时候我们可能希望自定义 AlertDialog 的标题颜色,以便与其他元素或特定的设计风格相匹配。本文将介绍如何通过代码设置 AlertDialog 的标题颜色。

设置标题颜色

要设置 AlertDialog 的标题颜色,我们需要创建一个自定义的 AlertDialog 对象,并在构建对话框之前设置标题的颜色。下面是一个简单的示例,展示了如何设置 AlertDialog 的标题颜色:

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Dialog Title");

// 设置标题颜色
int titleTextColor = getResources().getColor(R.color.dialog_title_color);
TextView title = new TextView(this);
title.setText("Dialog Title");
title.setTextColor(titleTextColor);
title.setTextSize(TypedValue.COMPLEX_UNIT_SP, 18); // 设置标题字体大小
title.setGravity(Gravity.CENTER); // 设置标题居中
builder.setCustomTitle(title);

builder.setMessage("Dialog message");
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int which) {
        // 点击 OK 按钮的响应
    }
});

AlertDialog dialog = builder.create();
dialog.show();

在上面的示例中,我们首先创建了一个 AlertDialog.Builder 对象,并设置了对话框的标题为 "Dialog Title"。接下来,我们通过 getResources().getColor() 方法获取标题颜色的资源值,并使用该颜色创建一个 TextView 对象。然后,我们分别设置了自定义标题的文本、颜色、字体大小和对齐方式。最后,通过调用 AlertDialog.BuildersetCustomTitle() 方法将自定义标题设置为对话框的标题,并创建并显示 AlertDialog

示例运行效果

下面是使用上述代码创建的 AlertDialog 的示例运行效果:

stateDiagram
    [*] --> DialogCreated
    DialogCreated --> DialogShown
    DialogShown --> [*]

![AlertDialog示例运行效果](

结论

通过上述示例,我们可以看到如何使用代码设置 AlertDialog 的标题颜色。我们创建了一个自定义的 TextView 对象,并将其用作 AlertDialog 的标题。通过设置标题的颜色、字体大小和对齐方式,我们能够轻松地自定义 AlertDialog 的标题样式。

希望本文对你理解如何设置 AlertDialog 的标题颜色有所帮助。通过使用上述代码,你可以为你的应用程序创建具有自定义标题颜色的 AlertDialog,以满足你的特定需求。