Правильная установка стиля SeekBar для API Holo и pre-Holo

После настройки SeekBar со стилем Holo я получил предупреждение о том, что он не поддерживает API до Holo.

Если я оставлю это так, это все равно приведет к сбою приложения или вызову стиля pre-Holo? На эмуляторе не вылетает и у меня нет устройства 2.3.3.

Причина спросить его странное поведение. Я попытался вручную установить стиль для Holo и pre-Holo, используя каталоги res/values-v11/, поместив styles.xml в каждый и установив стиль SeekBar на style="@style/settings_seekbar" .

Стиль для API 11+ выглядел так

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

и стиль для API старше 11 выглядел так

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

Так что казалось, что это сработает. Но на любом устройстве с Android 4.0+ я не вижу темы Holo, а вижу старую толсто-желтую тему.

Если это правильный способ настройки стилей (на случай, если первое решение приведет к сбою устройства), где я допустил ошибку, поэтому тема Holo никогда не появлялась на новых устройствах?


person sandalone    schedule 29.05.2014    source источник


Ответы (1)


Кажется, мы можем смело использовать тему из верхнего SDK, потому что я не нашел признаков того, что это когда-либо приведет к сбою приложения.

Если темы не существует, Android будет использовать соответствующую тему более низкого уровня.

Ошибка, которую мы видим на изображении, — это просто предупреждение о том, что пользовательский интерфейс не будет выглядеть так же в SDK, которые не поддерживают эту тему.

person sandalone    schedule 06.06.2014