更改AlertDialog的文本颜色

时间:2018-11-07 17:10:12

标签: android android-alertdialog android-styles

我有一个AlertDialog,其中包含两个选项供用户单击。 AlertDialog可以按预期工作,但我不知道如何将文本颜色从黑色更改为白色:

enter image description here

这是代码:

String[] shareOptions = {"Copy media url", "Copy Reddit url"};

AlertDialog.Builder builder = new AlertDialog.Builder(new ContextThemeWrapper(getContext(),R.style.AlertDialogDark));
builder.setItems(shareOptions, new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        ClipboardManager clipboard = (ClipboardManager) getContext().getSystemService(Context.CLIPBOARD_SERVICE);
        String copiedUrl = "";
        if(which == 0) copiedUrl = mCurrSubmission.getUrl();
        else copiedUrl = "www.reddit.com" + mCurrSubmission.getPermalink();

        ClipData clip = ClipData.newPlainText("share_url", copiedUrl);
        clipboard.setPrimaryClip(clip);
    }
});
builder.show();
return true;

这是我要使用的样式:

<style name="AlertDialogDark" parent="@android:style/Theme.Dialog">
    <item name="android:background">@color/colorDarkerGray</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:textColor">#ffffff</item>
    <item name="android:textColorPrimary">#ffffff</item>
    <item name="android:textColorSecondary">#ffffff</item>
    <item name="android:textColorTertiary">#ffffff</item>
</style>

如何将文本颜色从黑色更改为白色?

2 个答案:

答案 0 :(得分:0)

你能试试吗

Author author = await db.Authors.Include(a => a.Books).SingleOrDefault(a => a.AuthorId == id);

this post中,开发人员将其与@一起使用。也许会起作用。

答案 1 :(得分:0)

此代码自定义对话框的消息:

AlertDialog ad = builder.create();
TextView messageView = ad.findViewById(android.R.id.message);
messageView.setTextColor(0xffffff);
messageView.setText("your title");

标准对话框的消息是TextView,其ID为android.R.id.message
由于该消息是TextView,因此您可以进行进一步的自定义,例如背景色,填充等。
输入此代码后,您可以调用:

ad.show();