我在这些文件夹中有 3 个 styles.xml 文件:
资源/值:
<style name="CustomTheme" parent="Theme.Sherlock.Light">
<item name="android:windowBackground">@color/white</item>
<item name="android:colorBackground">@color/white</item>
</style>
资源/值-v11
<style name="CustomTheme" parent="android:Theme.Holo.Light">
<item name="android:windowBackground">@color/white</item>
<item name="android:colorBackground">@color/white</item>
</style>
资源/值-v14
<style name="CustomTheme" parent="android:Theme.Holo.Light">
<item name="android:windowBackground">@color/white</item>
<item name="android:colorBackground">@color/white</item>
</style>
将 Holo.Light 作为配置的 v11 和 v14 是否正确?然后将 Theme.Sherlock.Light 作为默认值?
我正在 v-11 模拟器上进行测试,我必须将这一行添加到我的代码中:
setTheme(R.style.Theme_Sherlock_Light);
但我不确定它是否适用于所有必要的版本。这是正确的设置吗?或者我需要调整什么吗?我有点困惑为什么我必须在代码中指定主题,如果它已经在 xml 中指定。
谢谢, 亚历克斯
最佳答案
如果我没有误解你的疑惑:
Sherlock 是适用于旧设备的 android ActionBar 的一个端口。因此,如果您使用的是 Sherlock,则可以为两者(旧设备和新设备)获得相同的 android:Theme.Holo.Light
样式。如果你想在旧设备上应用样式,你必须删除 android:
前缀
这样你将拥有相同的新旧设备外观
<style name="CustomTheme" parent="Theme.Sherlock.Light">
<item name="android:windowBackground">@color/white</item>
<item name="android:colorBackground">@color/white</item>
<item name="windowBackground">@color/white</item>
<item name="colorBackground">@color/white</item>
</style>
因此您可以保留样式
文件,如果您需要在平板电脑和手机上进行不同的自定义,您可以自定义尺寸
和颜色
文件
关于Android - ActionbarSherlock 样式配置应该是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17172340/