Android 尝试覆盖样式会完全改变它

Android trying to override style changes it completely

我的 styles.xml

里有这个
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="android:spinnerStyle">@style/AppSpinnerStyle</item>
    <!-- snip -->
</style>

<style name="AppSpinnerStyle" parent="android:Widget.Spinner">
    <!-- My custom changes to go here -->
</style>

像这样重写 android:spinnerStyle 会完全改变微调器的外观。即使不应用我自己的任何自定义更改。

我只能想象通过继承 android:Widget.Spinner 我得到了某种默认样式而不是主题样式。

如何继承主题的样式?

编辑

我想我真正需要知道的是,我怎样才能知道 android:spinnerStyle 在我更改它之前引用了什么?

您继承自 android:Widget.Spinner,它不是 AppCompat 小部件,因此它不会具有 Theme.AppCompat.Light.DarkActionBar.

应有的微调器外观

我自己没有尝试过,但是尝试使用这些:

Widget.AppCompat.Spinner.DropDown.ActionBar
Widget.AppCompat.Light.Spinner.DropDown.ActionBar

如果您使用的是 AppCompat v7 的第 22 版,那么您也可以尝试:

Widget.AppCompat.Spinner.Underlined