Skip to content

Most visited

Recently visited

navigation

Mantener la compatibilidad

Algunas características de Material Design, como el tema material y las transiciones de actividades personalizadas, solo están disponibles en Android 5.0 (API nivel 21) y superior. Sin embargo, puedes diseñar tus aplicaciones para usar estas características cuando se ejecutan en dispositivos que admiten Material Design y aún son compatibles con dispositivos que ejecutan versiones anteriores de Android.

Definir estilos alternativos

Puedes configurar tu aplicación para usar el tema material en los dispositivos que los admiten y revertir a un tema anterior en los dispositivos que ejecutan versiones anteriores de Android:

  1. Define un tema que herede de un tema anterior (como Holo) en res/values/styles.xml.
  2. Define un tema con el mismo nombre que hereda del tema material en res/values-v21/styles.xml.
  3. Establece este tema como el tema de tu aplicación en el archivo de manifiesto.

Nota: Si tu aplicación usa el tema material pero no proporciona un tema alternativo, tu aplicación no se ejecutará en versiones de Android anteriores a la versión 5.0.

Proporcionar diseños alternativos

Si los diseños que realizas de acuerdo con las pautas de Material Design no usan ninguno de los nuevos atributos XML introducidos en Android 5.0 (API nivel 21), estos trabajarán en versiones anteriores de Android. De lo contrario, puedes proporcionar diseños alternativos. También puedes proporcionar diseños alternativos para personalizar la apariencia de tu aplicación en versiones anteriores de Android.

Crea tus archivos de diseño para Android 5.0 (API nivel 21) dentro de res/layout-v21/ y tus archivos de diseño alternativo para versiones anteriores de Android dentro de res/layout/. Por ejemplo, res/layout/my_activity.xml es un diseño alternativo para res/layout-v21/my_activity.xml.

Para evitar duplicación de código, define tus estilos en res/values/, modifica estilos en res/values-v21/ para las nuevas API y usa transmisión por herencia de estilos, definiendo estilos base en res/values/ y heredando de los que están en res/values-v21/.

Usar la Biblioteca de soporte

Las Bibliotecas de soporte v7 r21 y superiores incluyen las siguientes características de Material Design:

Widgets del sistema

Los temas Theme.AppCompat proporcionan estilos de Material Design para estos widgets:

Paleta de colores

Para obtener estilos de Material Design y personalizar la paleta de colores con la Biblioteca de soporte v7 de Android, aplica uno de los 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 y tarjetas

Los widgets RecyclerView y CardView están disponible en versiones anteriores de Android mediante la Biblioteca de soporte v7 con estas limitaciones:

Dependencias

Para usar estas características en versiones de Android anteriores a la 5.0 (API nivel 21), incluye en tu proyecto la Biblioteca de soporte v7 de Android como una dependencia 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.+'
}

Comprobar la versión del sistema

Las siguientes características están disponibles solo en Android 5.0 (nivel de API 21) y superior:

Para conservar la compatibilidad con versiones anteriores de Android, comprueba la version del sistema en tiempo de ejecución antes de invocar las API para cualquiera de estas características:

// 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
}

Nota: Para especificar qué versiones de Android admite tu aplicación, usa los atributos android:minSdkVersion y android:targetSdkVersion en tu archivo de manifiesto. Para usar las características de Material Design en Android 5.0, establece el atributo android:targetSdkVersion en 21. Para más información, consulta la guía de <uses-sdk> de la API.

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!

Follow Google Developers on 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.
(Sep 2017 survey)