您好我正在使用自定义主题来自定义我的警报对话框。我的问题是,当我将背景颜色设置为任何颜色时,我的文本变得不可见。这是我的代码
<style name="CustomDialogFragment" parent="android:Theme.Dialog">
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:background">@color/black</item>
<item name="textColorAlertDialogListItem">@color/white</item>
</style>
任何帮助将受到赞赏并提前感谢
答案 0 :(得分:6)
您需要设置
<item name="android:textColor">#54D66A</item> // Add your Hex color code
修改强>
您应该使用android:textColorPrimary
<item name="android:textColorPrimary">#54D66A</item>
答案 1 :(得分:1)
您必须为文本设置颜色,因为对话框背景颜色和文本颜色相同,因此文本不可见,设置
<item name="android:textColor">#FFFFFF</item>
答案 2 :(得分:1)
答案 3 :(得分:0)
相应地尝试以下风格:
<style name="AlertDialogCustom" parent="@android:style/Theme.Dialog">
<item name="android:textColor">#FFFFFF</item>
<item name="android:typeface">monospace</item>
<item name="android:textSize">18sp</item>
<item name="android:textColorAlertDialogListItem">#FFFFFF</item>
</style>
答案 4 :(得分:0)
您可以通过将主题应用于对话框来实现它。
使用 android.R.style.Theme_Material_Light_Dialog_Alert 作为对话框主题。像这样
builder = new AlertDialog.Builder(mContext, android.R.style.Theme_Material_Light_Dialog_Alert);
希望它能奏效。
答案 5 :(得分:0)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="CustomDialogFragment" parent="@android:style/android:Theme.Dialog">
<item name="android:textColor">#00FF00</item>
<item name="android:typeface">monospace</item>
<item name="android:textSize">10sp</item>
</style>
</resources>
我认为这会对你有帮助..
答案 6 :(得分:0)
对于Android N支持,您应该使用:
<item name="android:textColorPrimary">#ffffff</item>
<item name="android:alertDialogTheme">@android:style/Theme.DeviceDefault.Light.Dialog.Alert</item>
答案 7 :(得分:0)
在我的情况下,原因是因为使用“错误”布局inflater。花一整天来解决这个问题:(
“错误的”Inflater
LayoutInflater inflater = (LayoutInflater) Navigations.context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
“纠正”Inflater
LayoutInflater inflater = mainActivity.getLayoutInflater();