Skip to content

Most visited

Recently visited

navigation

Como manter a compatibilidade

Alguns recursos do Material Design, como o tema do Material e transições personalizadas de atividades, estão disponíveis apenas no Android 5.0 (API de nível 21) e posteriores. Contudo, você pode projetar os aplicativos para usar esses recursos ao executá-los em dispositivos compatíveis com o Material Design e ainda mantê-los compatíveis com dispositivos executando versões anteriores do Android.

Definir estilos alternativos

Você pode configurar o aplicativo para usar o tema do Material em dispositivos compatíveis com ele e reverter para um tema antigo em dispositivos que executem versões anteriores do Android:

  1. Defina um tema herdado de um tema antigo (como Holo) em res/values/styles.xml.
  2. Defina um tema com o mesmo nome herdado do tema do Material em res/values-v21/styles.xml.
  3. Defina esse tema como o tema do seu aplicativo no arquivo de manifesto.

Observação: se o seu aplicativo usa o tema do Material mas não fornece um tema alternativo dessa maneira, o aplicativo não rodará em versões mais antigas do que o Android 5.0.

Fornecer layouts alternativos

Se os layouts que você projetou de acordo com as orientações do Material Design não usarem quaisquer dos novos atributos XML introduzidos no Android 5.0 (API de nível 21), eles funcionarão em versões antigas do Android. Caso contrário, você pode fornecer layouts alternativos. Você também pode fornecer layouts alternativos para personalizar a aparência do seu aplicativo em versões anteriores do Android.

Crie arquivos de layout para Android 5.0 (API de nível 21) dentro de res/layout-v21/ e arquivos de layout alternativo para versões anteriores do Android dentro de res/layout/. Por exemplo, res/layout/my_activity.xml é um layout alternativo de res/layout-v21/my_activity.xml.

Para evitar duplicação do código, defina os estilos dentro de res/values/, modifique-os em res/values-v21/ para as novas APIs e use herança de estilo, definindo estilos de base em res/values/ e herdando daqueles em res/values-v21/.

Usar a Biblioteca de Suporte

A v7 da Biblioteca de Suporte r21 e posteriores incluem os seguintes recursos do Material Design:

Widgets de sistema

Os temas Theme.AppCompat fornecem estilos do Material Design para os seguintes widgets:

Paleta de cores

Para obter estilos do Material Design e personalizar a paleta de cores com a v7 da Biblioteca de Suporte do Android, aplique um dos temas Theme.AppCompat:

<!-- extend one of the Theme.AppCompat themes -->
<style name="Theme.MyTheme" parent="Theme.AppCompat.Light">
    <!-- customize the color palette -->
    <item name="colorPrimary">@color/material_blue_500</item>
    <item name="colorPrimaryDark">@color/material_blue_700</item>
    <item name="colorAccent">@color/material_green_A200</item>
</style>

Listas e cartões

Os widgets RecyclerView e CardView estão disponíveis em versões anteriores do Android na Biblioteca de Suporte v7 do Android com as seguintes limitações:

Dependências

Para usar esses recursos em versões anteriores ao Android 5.0 (API de nível 21), inclua a Biblioteca de Suporte v7 do Android no projeto como uma dependência de Gradle:

dependencies {
    compile 'com.android.support:appcompat-v7:21.0.+'
    compile 'com.android.support:cardview-v7:21.0.+'
    compile 'com.android.support:recyclerview-v7:21.0.+'
}

Verificar a versão do sistema

Os recursos a seguir estão disponíveis somente no Android 5.0 (API de nível 21) e em posteriores:

Para preservar a compatibilidade com versões anteriores do Android, verifique a version do sistema em tempo de execução antes de chamar as APIs para quaisquer destes recursos:

// Check if we're running on Android 5.0 or higher
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
    // Call some material design APIs here
} else {
    // Implement this feature without material design
}

Observação: Para especificar quais versões do Android são compatíveis com o seu aplicativo, use os atributos android:minSdkVersion e android:targetSdkVersion no arquivo de manifesto. Para usar os recursos do Material Design no Android 5.0, defina o atributo android:targetSdkVersion como 21. Para obter mais informações, consulte o guia de API <uses-sdk>.

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Siga o Google Developers no WeChat

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience. (Dec 2017 Android Platform & Tools Survey)