android - oreo 中的文本颜色和元素颜色已更改

标签 android android-8.0-oreo

DatePickerDialog 的文本颜色在 oreo(谷歌像素)设备中变为白色,如下图所示,这在 oreo 之前的设备中看起来很完美。

enter image description here

抽屉菜单字体也变为白色,如下图所示,这在 oreo 之前的设备中看起来又很完美。

enter image description here

禁用开关颜色变为白色如下图

enter image description here

在我的 gradle 文件中:

compileSdkVersion 26
buildToolsVersion "26.0.2"
targetSdkVersion 26

compile 'com.android.support:design:26.1.0'
compile 'com.android.support:cardview-v7:26.1.0'
compile 'com.android.support:recyclerview-v7:26.1.0'

样式.xml :

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/newcolorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="android:windowBackground">@color/window_background</item>
    <item name="android:actionButtonStyle">@style/ActionButtonStyle</item>
    <item name="colorControlNormal">@color/white</item>
    <item name="actionMenuTextColor">@color/white</item>
    <item name="android:actionMenuTextColor">@color/white</item>

    <!-- Active thumb color & Active track color(30% transparency) -->
    <item name="colorControlActivated">@color/colorAccent</item>
    <!-- Inactive thumb color -->
    <item name="colorSwitchThumbNormal">@color/white</item>
    <!-- Inactive track color(30% transparency) -->
    <item name="android:colorForeground">@color/white</item>
</style>

<style name="AppDialogTheme" parent="Theme.AppCompat.Light.Dialog.Alert">
    <item name="windowNoTitle">true</item>
    <item name="android:background">@color/transparent</item> //Your custom background color
</style>

<!--this will reduce space between actionBar Icons-->
<style name="ActionButtonStyle" parent="Widget.AppCompat.ActionButton">
    <item name="android:paddingLeft">5dip</item>
    <item name="android:paddingRight">5dip</item>
</style>

<style name="StarRatingBar" parent="@android:style/Widget.RatingBar">
    <item name="android:progressDrawable">@drawable/bg_rating_bar</item>
    <item name="android:numStars">5</item>
</style>

<style name="Base.Widget.Design.TabLayout" parent="android:Widget">
    <item name="tabBackground">@drawable/tab_bar_selector</item>
    <!--<item name="tabIndicatorColor">@color/white</item>
    <item name="tabIndicatorHeight">4dp</item>-->
</style>

<style name="Widget.CardContent" parent="android:Widget">
    <item name="android:paddingLeft">16dp</item>
    <item name="android:paddingRight">16dp</item>
    <item name="android:paddingTop">24dp</item>
    <item name="android:paddingBottom">24dp</item>
    <item name="android:orientation">vertical</item>
</style>

<style name="MenuLabelsStyle">
    <item name="android:background">@drawable/fab_label_background</item>
    <item name="android:textColor">#FFFFFF</item>
    <item name="android:textSize">14sp</item>
    <item name="android:maxLines">2</item>
    <item name="android:ellipsize">end</item>
</style>

<style name="MenuButtonsStyle">
    <item name="fab_size">normal</item>
    <item name="fab_showAnimation">@anim/jump_from_down</item>
    <item name="fab_hideAnimation">@anim/jump_to_down</item>
    <item name="fab_shadowColor">#444</item>
    <item name="fab_colorNormal">?attr/colorPrimaryDark</item>
    <item name="fab_colorPressed">?attr/colorPrimary</item>
    <item name="fab_colorRipple">?attr/rippleColor</item>
</style>

<style name="MenuButtonsSmall">
    <item name="fab_size">mini</item>
    <item name="fab_colorNormal">#1565C0</item>
    <item name="fab_colorPressed">#2272CD</item>
    <item name="fab_colorRipple">#62B2FF</item>
</style>

<style name="MenuButtonsSmall.Green">
    <item name="fab_colorNormal">#43A047</item>
    <item name="fab_colorPressed">#2E7D32</item>
    <item name="fab_colorRipple">#1B5E20</item>
</style>

<style name="MenuButtonsSmall.AppColor">
    <item name="fab_colorNormal">@color/colorPrimaryTrans</item>
    <item name="fab_colorPressed">@color/colorPrimaryDarkTrans</item>
    <item name="fab_colorRipple">@color/colorAccentTrans</item>
    <item name="fab_size">normal</item>
</style>

<style name="FavTextInput1" parent="TextAppearance.AppCompat">
    <!-- Hint color and label color in FALSE state -->
    <item name="android:textColorHint">@color/gray_9ea</item>
    <item name="android:textSize">20sp</item>
    <!-- Label color in TRUE state and bar color FALSE and TRUE State -->
    <item name="colorAccent">@color/colorAccent</item>
    <item name="colorControlNormal">@color/gray_9ea</item>
    <item name="colorControlActivated">@color/colorAccent</item>
</style>
<style name="FavTextInput2" parent="TextAppearance.AppCompat">
    <!-- Hint color and label color in FALSE state -->
    <item name="android:textColorHint">@color/gray_9ea</item>
    <item name="android:textSize">14sp</item>
    <!-- Label color in TRUE state and bar color FALSE and TRUE State -->
    <item name="colorAccent">@color/colorAccent</item>
    <item name="colorControlNormal">@color/gray_9ea</item>
    <item name="colorControlActivated">@color/colorAccent</item>
</style>

<style name="TextLabel" parent="Widget.Design.TextInputLayout">
    <item name="android:textColorHint">@color/white_lite</item>
</style>

<style name="TextError" parent="Widget.Design.TextInputLayout">
    <item name="android:textColor">@color/white_lite</item>
</style>

<style name="Color1SwitchStyle" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorControlActivated">@color/colorAccent</item>
    <item name="colorSwitchThumbNormal">@color/light_gray</item>
    <item name="android:colorForeground">@color/dark_gray</item>
</style>

<style name="AlertDialogTheme" parent="Theme.AppCompat.Light.Dialog.Alert">
    <item name="android:textColorPrimaryInverse">@color/black</item>
</style>

<style name="MyDatePicker" parent="android:Widget.Material.Light.DatePicker">
    <item name="android:textColorPrimary">@color/black</item>

</style> </resources>

如果需要更多信息,请告诉我。 提前致谢。

最佳答案

检查你的 res/Values/Styles.xml

https://developer.android.com/training/material/theme.html

你应该仔细观察的是:

  1. 父样式

  2. 尝试使用:"textColorSecondary","textColor"

关于android - oreo 中的文本颜色和元素颜色已更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47096364/

相关文章:

java - 迁移到Gradle,但是Gradle信息在项目中给出

android - 缩小移动网页时出现额外空间,Galaxy S5

android - 锁定屏幕上未显示自定义通知奥利奥

android - 持续运行后台服务

java - 如何将变量数组传递给android中的REST URL?

android - 如何使用 NDK 查找我的 C++ 编写的 Android 应用程序的内存使用情况

java - 2 IntentServices 访问文件系统上的相同数据..安全吗?

android - 如果我的应用程序针对牛轧糖设备,startService() 仍然有效

android - 更新通知 channel 名称的正确方法是什么?

android - NotificationListenerService 未绑定(bind)到 Android 8 (Oreo) 上的 SystemUI