当前位置: 首页 > 知识库问答 >
问题:

自定义首选项主题

苗森
2023-03-14

我目前正在尝试自定义首选项部分的颜色。但我不知道该怎么做。

在我的应用程序中,我有两个主题:黑暗主题和光明主题。这是用户选择的一个选项。在我的主要活动中,我设置了用户选择的主题。

在我使用 attr 定义要显示的颜色之后。

当前列表首选项:

代码:style.xml

<resources>

    <!-- theme clair  -->
    <style name="AppTheme" parent="Theme.AppCompat.Light">

        <!-- Color -->
        <item name="colorAppBarAndDrawer">@color/colorAppBarAndDrawerLight</item>
        <item name="colorBackground">@color/colorBackgroundLight</item>
        <item name="colorText">@color/colorTextLight</item>
        <item name="colorTextSecondary">@color/colorTextSecondaryLight</item>
        <item name="colorItem">@color/colorItemLight</item>

        <!-- images -->
        <item name="iconRefresh">@drawable/ic_refresh_black_24dp</item>
        <item name="iconFirstPage">@drawable/ic_first_page_black_24dp</item>
        <item name="iconSchedule">@drawable/ic_schedule_black_24dp</item>

        <!-- menu -->
        <item name="android:actionMenuTextColor">@color/colorTextLight</item>
        <item name="android:textColorSecondary">@color/colorTextSecondaryLight</item>

        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="android:textColor">@color/colorTextLight</item>



    </style>

    <!-- theme sombre -->
    <style name="AppThemeNight" parent="Theme.AppCompat.Light.DarkActionBar">

        <item name="colorAppBarAndDrawer">@color/colorAppBarAndDrawerDark</item>
        <item name="colorBackground">@color/colorBackgroundDark</item>
        <item name="colorText">@color/colorTextDark</item>
        <item name="colorItem">@color/colorItemDark</item>
        <item name="colorTextSecondary">@color/colorTextSecondaryDark</item>


        <!-- images -->
        <item name="iconRefresh">@drawable/ic_refresh_white_24dp</item>
        <item name="iconFirstPage">@drawable/ic_first_page_white_24dp</item>
        <item name="iconSchedule">@drawable/ic_schedule_white_24dp</item>

        <!-- menu -->
        <item name="android:actionMenuTextColor">@color/colorTextDark</item>
        <item name="android:textColorSecondary">@color/colorTextSecondaryDark</item>

        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>

        <item name="android:textColor">@color/colorTextDark</item>


    </style>

    <style name="PreferenceThemeOverlay.v14" parent="@style/PreferenceFixTheme.DayNight.NoActionBar">
    <!--<item name="android:background">?attr/colorAppBarAndDrawer</item>
    <item name="android:textColor">?attr/colorText</item>
    <item name="android:textColorSecondary">?attr/colorTextSecondary</item>-->

    <item name="colorAccent">#1976D2</item>

    </style>



    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />

    <style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />


</resources>

就像我说的,我已经试过解决办法了。我该怎么办?

非常感谢托马斯

编辑我将preferenceActivity更改为preferenceActivityCompat,现在我可以更改开关按钮的颜色。时尚。xml我添加了以下内容:

<style name="PreferenceThemeOverlay.v14" parent="@style/PreferenceFixTheme.DayNight.NoActionBar">
        <!--<item name="android:background">?attr/colorAppBarAndDrawer</item>
        <item name="android:textColor">?attr/colorText</item>
        <item name="android:textColorSecondary">?attr/colorTextSecondary</item>-->

        <item name="colorAccent">#1976D2</item>

    </style>

共有1个答案

鲁鹤轩
2023-03-14

所以我没有找到真正的解决办法。我在Android Studio中使用了主题编辑器,并使用颜色选择器选择颜色。现在它起作用了。我不知道我是否应该把这篇文章写成“已解决”?谢谢托马斯

 类似资料:
  • 问题内容: 我正在研究Android项目。我有一个prefs.xml代码,像这样 而且我需要自定义首选项布局。我创造了; custom_name_setting_layout.xml 并编写一个SettingActivity.java 我的问题是;我写了setBackgroundColor方法,但是没有用。不起作用的意思是,该程序正在运行而没有错误(例如NullReferenceException

  • 我已经自定义了应用程序中的所有单选按钮,但是listPreference中的单选按钮没有被自定义。 我用了这个名为btn_radio.xml 这是自定义的无线电按钮,它扩展了Android自定义单选按钮 在我的应用程序的主题中,我做了这些更改 此更改自定义我的应用程序中除列表首选项中的单选按钮之外的所有单选按钮

  • 在Bootstrap 4中,我们已经加了一系列的全局选项,让你能够在项目中轻松定制所有的组件。这些选项通过Sass变量来处理。通过内置的Gruntfile,可以简单改变一个变量的值,并重新编译。 可用的变量 您可以在_variables.scss文件找到这些变量并自定义这些变量。 变量 值 Description $spacer 1rem (默认), 或者任何大于0的值 为间隔工具指定默认的间隔值

  • 本文向大家介绍android-studio 自定义VM选项,包括了android-studio 自定义VM选项的使用技巧和注意事项,需要的朋友参考一下 示例 vmoptions通过从Android Studio工具栏中选择“帮助”>“编辑自定义VM选项”,可以使用自己的个人设置覆盖默认设置。这将创建一个本地副本,您可以自由编辑它。 或者,您可以vmoptions使用下面给出的路径直接编辑默认值。请

  • 打开主题配置 选一个自己喜欢的主题吧

  • 自定义主题 Element 默认提供一套主题,CSS 命名采用 BEM 的风格,方便使用者覆盖样式。我们提供了四种方法,可以进行不同程度的样式自定义。 主题编辑器 使用在线主题编辑器,可以修改定制 Element 所有全局和组件的 Design Tokens,并可以方便地实时预览样式改变后的视觉。同时它还可以基于新的定制样式生成完整的样式文件包,供直接下载使用(关于如何使用下载的主题包,请参考本节