Android AlertDialog文本选择图标颜色

Android AlertDialog文本选择图标颜色,android,Android,在AlertDialog中的EditText控件中选择文本时出现问题 当我选择文本时,文本选择工具栏显示在屏幕顶部。问题是工具栏背景是白色的,工具栏中显示的图标也是白色的。因此,图标不可见,但如果您触摸它们,它们会工作。这是安卓4.2.2API17上的 这是我用来创建包含EditText的AlertDialog的代码片段。它位于我的测试项目活动的onCreate方法中 EditText et = new EditText(this); et.setText("Test"); AlertDialo

在AlertDialog中的EditText控件中选择文本时出现问题

当我选择文本时,文本选择工具栏显示在屏幕顶部。问题是工具栏背景是白色的,工具栏中显示的图标也是白色的。因此,图标不可见,但如果您触摸它们,它们会工作。这是安卓4.2.2API17上的

这是我用来创建包含EditText的AlertDialog的代码片段。它位于我的测试项目活动的onCreate方法中

EditText et = new EditText(this);
et.setText("Test");
AlertDialog.Builder b = new AlertDialog.Builder(this);
b.setView(et).setPositiveButton("Ok", null).setNegativeButton("Cancel", null);
b.create().show();
以下是选择文本时文本选择工具栏的外观:

如何更改工具栏和/或图标的颜色以使其可见?

我认为您可以使用:

<item name="actionModeBackground">@drawable/background</item>
<item name="android:actionModeBackground">@drawable/background</item>

我尝试在colors.xml文件中定义颜色,并在主题中添加了@color/myredcolor,但没有效果。我仍然得到白色图像上的白色。我的主题的父对象是theme.AppCompat.Light.DarkActionBar也许你也应该使用android:actionModeBackground。另外,我不确定这是否适用于颜色。尝试定义一个可绘制的形状。我尝试使用一个可绘制的形状,而不是颜色,我尝试将android:放在actionModeBackground前面,但它仍然不起作用。我用我的测试应用程序的文件制作了一个粘贴箱:。我正在运行JellyBean API17模拟器。@drawable/background为我解决了问题;我不知道为什么它被否决了。可能是重复的
<?xml version="1.0" encoding="utf-8"?>
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >
    <solid
        android:color="@color/color" />
</shape>