8

I would like to change the title and line color of my ListPreference from blue to pink, to match the line of my action bar.

ListPreference

Any ideas? Thanks in advance!

I've been looking through Android's themes.xml and styles.xml looking at things like dialogPreferenceStyle, but haven't figured it out yet.

Felix
  • 3,783
  • 5
  • 34
  • 53

2 Answers2

7

Had the same problem today. Old thread, but I found this: and it works perfectly.

Simply modify your styles.xml

<resources>

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>

    <!-- Add this -->

    <item name="android:dialogTheme">@style/DialogStyle</item>
    <item name="android:alertDialogTheme">@style/DialogStyle</item>

</style>

<!-- Customize your color here -->

<style name="DialogStyle" parent="android:Theme.Material.Dialog">
    <item name="android:colorAccent">@color/colorAccent</item>
</style>

Martin Jäkel
  • 322
  • 6
  • 21
  • Nice, way cleaner solution! – Felix May 25 '16 at 00:06
  • I'm always at a complete lost when it comes to messing around with `styles.xml`, after hours of digging through answers this is the one that lead me on the right path. – lasec0203 Jun 04 '21 at 06:16
2

Ended up creating a custom ListPreference widget, following this answer.

I hoped to be able to simply change the style without having to implement a custom widget, but I haven't figured that out yet.

Community
  • 1
  • 1
Felix
  • 3,783
  • 5
  • 34
  • 53