创建自定义样式并将 Parent 样式设置为 holo light 主题,但将 ActionBar 设置为普通 Holo。
一个类似这样的 xml 文件应该可以完成这项工作(只是出于我的记忆):
<style name="appstyle0" parent="android:style/Theme.Holo.Light">
<item name="android:actionBarStyle">@android:style/Widget.Holo.ActionBar</item>
</style>
然后将您的 AndroidManifest.xml 中的 appstyle0 设置为样式,并且在您的所有活动中都是全息光主题,但操作栏样式是全息黑暗。
编辑:
我检查了为什么我的第一个答案不起作用。
<style name="Widget.Holo.Light.ActionBar" parent="Widget.Holo.ActionBar">
<item name="android:titleTextStyle">@android:style/TextAppearance.Holo.Widget.ActionBar.Title</item>
<item name="android:subtitleTextStyle">@android:style/TextAppearance.Holo.Widget.ActionBar.Subtitle</item>
<item name="android:background">@android:drawable/ab_transparent_light_holo</item>
<item name="android:backgroundStacked">@android:drawable/ab_stacked_transparent_light_holo</item>
<item name="android:backgroundSplit">@android:drawable/ab_bottom_transparent_light_holo</item>
<item name="android:homeAsUpIndicator">@android:drawable/ic_ab_back_holo_light</item>
<item name="android:progressBarStyle">@android:style/Widget.Holo.Light.ProgressBar.Horizontal</item>
<item name="android:indeterminateProgressStyle">@android:style/Widget.Holo.Light.ProgressBar</item>
</style>
操作栏在styles.xml 中定义,其属性通常由主题设置。
首先BG是透明的,所以你应该使用“Widget.Holo.Light.ActionBar.Solid”作为父级。
然后你必须将不同的项目一一设置为黑暗主题。
以titleTextStyle为例:
<style name="TextAppearance.Holo.Widget.ActionBar.Title.Own"
parent="TextAppearance.Holo.Widget.ActionBar.Title">
<item name="android:textColor">@android:color/primary_text_holo_dark</item>
<item name="android:textColorHighlight">@android:color/highlighted_text_holo_dark</item>
<item name="android:textColorHint">@android:color/hint_foreground_holo_dark</item>
<item name="android:textColorLink">@android:color/holo_blue_light</item>
</style>
现在设置为。
<item name="android:titleTextStyle">@android:style/TextAppearance.Holo.Widget.ActionBar.Title.Own</item>
使用上面的 xml 属性像这样继续。
在styles.xml 和themes.xml 中查找所有相关属性以查找参数。
很抱歉,但根据我所看到的,我想没有简单的方法......