为Holo和pre-Holo API正确设置SeekBar样式

时间:2014-05-29 09:44:14

标签: android android-layout android-styles android-seekbar

使用Holo样式设置SeekBar后,我发出警告说它不支持Holo之前的API。

如果我这样离开,这会让应用程序崩溃还是拉出前Holo风格?它不会在模拟器上崩溃,我没有2.3.3设备。

问他的原因是奇怪的行为。我尝试使用res/values-v11/目录为Holo和pre-Holo手动设置样式,并在每个目录中放置styles.xml并将SeekBar的样式设置为style="@style/settings_seekbar"

API 11+的样式看起来像这样

<style name="settings_seekbar">
    <item name="android:seekBarStyle">@android:style/Widget.Holo.SeekBar</item>
</style>

和早于11的API的样式看起来像这样

<style name="settings_seekbar">
    <item name="android:seekBarStyle">@android:style/Widget.SeekBar</item>
</style>

所以看起来这会起作用。但是在Android 4.0+的任何一款设备上,我都看不到Holo的主题,而是旧的厚黄色主题。

如果这是设置样式的正确方法(如果第一个解决方案会导致设备崩溃),我在哪里犯了错误,因此Holo主题从未出现在新设备上?

1 个答案:

答案 0 :(得分:0)

似乎我们可以安全地使用上层SDK中的主题,因为我没有发现它会使应用程序崩溃的指标。

如果主题不存在,Android将使用适当的低级主题。

我们在图片上看到的错误只是一个警告,在不支持此主题的SDK中,UI看起来不一样。