Используйте Design Appcompat библиотеки для реализации некоторых Материальных возможностей работать на предварительно Леденец устройств, использовать реальный Материальные стили и компоненты на Lollypop +.
Это делается путем предоставления альтернативных ресурсов (styles | themes.xml, layouts etc.
) с использованием квалификатора ресурсов (-v21
).
В values-v21/themes.xml
вы положили
<style name="MyAppBaseTheme" parent="android:Theme.Material">
<item name="android:colorPrimary">@color/primary</item>
...
В values/themes.xml
вы положили
<style name=”MyAppBaseTheme” parent=”Theme.AppCompat”>
<item name=”colorPrimary”>@color/primary</item>
...
<style name=”MyAppTheme” parent=”MyAppBaseTheme”>
<!-- here you put the version-independent stuff -->
Таким образом, вы ловко воспользовавшись темой переопределения, по только замене материала связанной части и определению всего остального один раз.
Обратите внимание на точный префикс android:
в версии, отличной от Appcompat. Это связано с тем, что в 5+ эти атрибуты являются частью sdk, а в Appcompat они являются обычными, такими же гражданами класса, как и любой из стилей, которые вы сами определяете.
Читать guide on maintaining compatibility, он расскажет вам о предоставлении альтернативных ресурсов стиля и рассек кодовое для пост- и пры 5,0
UPD Что касается Вашего вопроса в комментариях, они будут в состоянии отображать материал дизайн слишком?
Here is a breakdown of support library version and flavours, v*
указывает минимальную версию Android, необходимую для запуска указанной библиотеки. Например. общая библиотека поддержки v7 предоставит вам поддержку [подмножество] Материальные компоненты и стили на устройствах полностью назад к андроиду 2.1
https://www.google.com/design/spec/material- design/introduction.html – slanecek
@slanecek Я уже просмотрел это. я, похоже, не ответил на мой вопрос. Я просто хотел бы узнать, ограничивают ли материалы дизайн старых устройств пользователями. спасибо в любом случае – Devz
, если вам нужны только темы дизайна материалов в устройствах pre-lollipop, вы можете использовать тему appCompat из библиотеки поддержки, например, '' или вы можете использовать одну из библиотек, размещенных в github, если вам нужны такие функции, как эффект пульсации 'https: // github.com/ZieIony/Carbon' посмотреть этот lib – Sony