Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Appcompat

Permite el acceso a nuevas API en versiones de API anteriores de la plataforma (muchas con Material Design).
Actualización más reciente Versión estable actual Próxima versión potencial Versión Beta Versión Alfa
20 de mayo de 2020 1.1.0 1.2.0-rc01 - 1.3.0-alpha01

Cómo declarar dependencias

Para agregar una dependencia en Appcompat, debes agregar el repositorio Maven de Google a tu proyecto. Consulta el repositorio Maven de Google para obtener más información.

Agrega las dependencias de los artefactos que necesites en el archivo build.gradle de tu app o módulo:

    dependencies {
        def appcompat_version = "1.1.0"

        implementation "androidx.appcompat:appcompat:$appcompat_version"
        // For loading and tinting drawables on older versions of the platform
        implementation "androidx.appcompat:appcompat-resources:$appcompat_version"
    }
    

Para obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.

Comentarios

Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes en esta biblioteca antes de crear uno nuevo. Para agregar tu voto a un error existente, haz clic en el botón de la estrella.

Cómo crear un error nuevo

Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.

Versión 1.3.0

Versión 1.3.0-alpha01

20 de mayo de 2020

Lanzamiento de androidx.appcompat:appcompat:1.3.0-alpha01 y androidx.appcompat:appcompat-resources:1.3.0-alpha01. La versión 1.3.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Agrega una nueva regla de Lint para marcar llamadas al objeto setActionBar en actividades que extienden el elemento AppCompatActivity
  • Se agregó compatibilidad para el objeto ViewTreeLifecycleOwner del elemento Lifecycle 2.3.0-alpha01, el objeto ViewTreeViewModelStoreOwner del elemento Lifecycle 2.3.0-alpha03 y el objeto ViewTreeSavedStateRegistryOwner del elemento SavedState 1.1.0-alpha01 cuando se usa un objeto View dentro de un elemento AppCompatActivity. (b/151603528, aosp/1300264)
  • Agrega una API común para insertar contenido enriquecido (p. ej., pegar una imagen). La nueva devolución de llamada proporciona una única API que las apps pueden implementar para admitir las diferentes formas en que se puede insertar contenido enriquecido. Por ahora, la API solo se agrega al elemento AppCompatEditText y se invocará para las siguientes rutas de código:
    • pegar desde el portapapeles
    • insertar contenido desde el IME (InputConnection.commitContent) (I22bf7)

Correcciones de errores

  • Desde AppCompat 1.2.0-rc01: el elemento AppCompat ya no llama al objeto onMenuOpened() con un menú null. (b/142843126)
  • Resuelve correctamente el vínculo de texto y los colores de sugerencias en dispositivos más antiguos cuando se llama al objeto TextViewCompat.setTextAppeance con un estilo de apariencia de texto que tiene listas de estados de color y hace referencia a atributos de color del tema (b/154702995)

Versión 1.2.0

Versión 1.2.0-rc01

14 de mayo de 2020

Lanzamiento de androidx.appcompat:appcompat:1.2.0-rc01 y androidx.appcompat:appcompat-resources:1.2.0-rc01. La versión 1.2.0-rc01 contiene estas confirmaciones.

Cambios en la API

  • Se marcó al elemento AppCompatDelegate.setLocalNightMode como que requiere la versión 17 o posterior del SDK debido a un problema de plataforma con cambios de configuración que se filtraba entre actividades en SDK anteriores.

Correcciones de errores

  • Ahora se puede llamar al objeto AppCompatDelegate.setLocalNightMode antes del objeto Activity.attachBaseContext.
  • Se corrigió el consumo de inserciones del elemento ActionBarOverlayLayout que usaba, de manera incorrecta, las inserciones en caché.
  • El elemento AppCompat ya no llama al objeto onMenuOpened() con un menú null. (b/142843126)

Versión 1.2.0-beta01

1 de abril de 2020

Lanzamiento de androidx.appcompat:appcompat:1.2.0-beta01 y androidx.appcompat:appcompat-resources:1.2.0-beta01. La versión 1.2.0-beta01 contiene estas confirmaciones.

Nuevas funciones

  • Se agregaron las siguientes reglas de lint nuevas que marcarán usos incorrectos de AppCompat en los siguientes casos:
    • Carga de listas de estados de color: sugiere el uso de las API de ContextCompat y AppCompatResources para retrocompatibilidad
    • Carga de elementos de diseño: Sugiere el uso de las API ContextCompat y ResourcesCompat para retrocompatibilidad
    • Uso de listas de estados de color con el atributo Alfa: Marcas sin el atributo android:alpha que darán lugar a una apariencia incorrecta en algunas versiones de la plataforma
    • Ajuste de tono de las vistas de imágenes: Marcas que no usan app:tint que darán lugar a una apariencia incorrecta en versiones anteriores de la plataforma
    • Uso de elementos de diseño y ajuste de tono compuestos en vistas de texto: Sugiere el uso de API y atributos compatibles para retrocompatibilidad

Correcciones de errores

  • Se corrigió un error por el que ActionBarOverlayLayout (acción de decoración de ventanas) no despachaba correctamente WindowInsets.
  • Se corrigieron errores de ajuste de tono en la apariencia de los elementos de diseño y el texto en versiones anteriores de la plataforma
  • Se corrigió un error por el que androidx.appcompat:appcompat:1.1.0 falla cuando se mantiene presionado WebView (b/141351441)
  • Se implementaron correcciones para los errores de manipulación del contexto base y recuperación de los servicios del sistema durante el inicio de la actividad

Versión 1.2.0-alpha03

4 de marzo de 2020

Lanzamiento de androidx.appcompat:appcompat:1.2.0-alpha03 y androidx.appcompat:appcompat-resources:1.2.0-alpha03. La versión 1.2.0-alpha03 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió un error por el que el protector de estado del modo de acción se extendía a la barra de navegación y tenía un color incorrecto (Ia4a09)
  • Se corrigió un error por el que no se reanudaban las actividades detenidas en la API nivel 23 o versiones anteriores (I45201)

Versión 1.2.0-alpha02

29 de enero de 2020

Lanzamiento de androidx.appcompat:appcompat:1.2.0-alpha02 y androidx.appcompat:appcompat-resources:1.2.0-alpha02. La versión 1.2.0-alpha01 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió un error por el que appcompat 1.1.0 falla cuando se mantiene presionado WebView (b/141351441)
  • Se corrigió el ajuste de tono del elemento de diseño en TextView relacionado con elementos de diseño compuestos en la API nivel 23 (aosp/1172194)
  • Se garantizó que el contexto de la base siempre sea un wrapper (aosp/1194355)
  • Se agregaron algunas mejoras que permiten modificar la configuración del contexto de la base de una manera más inteligente (aosp/1204543)
  • Se inhabilitó createConfigurationContext() para Robolectric (aosp/1186218)

Versión 1.2.0-alpha01

4 de diciembre de 2019

Lanzamiento de androidx.appcompat:appcompat:1.2.0-alpha01 y androidx.appcompat:appcompat-resources:1.2.0-alpha01. La versión 1.2.0-alpha01 contiene estas confirmaciones.

Correcciones de errores

  • Las llamadas a PackageManager.getActivityInfo ya no se bloquean en el modo estricto con las verificaciones de inicio habilitadas.
  • Se corrigió el ajuste de tono de los elementos de diseño en AppCompatButton.
  • Se corrigieron el ajuste de tono y la apariencia del texto en versiones anteriores de la plataforma.

Versión 1.1.0

Versión 1.1.0

5 de septiembre de 2019

Lanzamiento de androidx.appcompat:appcompat:1.1.0 y androidx.appcompat:appcompat-resources:1.1.0. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.

Cambios importantes desde 2.0.1

  • Mejoras en el modo oscuro: ahora dejan de estar disponibles MODE_NIGHT_AUTO y el cambio de oscuro/claro según la hora actual. Se considera el uso de una configuración explícita o MODE_NIGHT_AUTO_BATTERY.
  • Actividad 1.0: AppCompatActivity ahora se extiende de manera transitiva desde ComponentActivity de Activity 1.0.0 mediante Fragment 1.1.0. Consulta las notas de la versión asociadas para obtener información acerca de los cambios en cada biblioteca.
  • Constructor AppCompatActivity LayoutId: Ahora las subclases de AppCompatActivity pueden invocar a un constructor en AppCompatActivity para que tome un ID de R.layout e indique el diseño que se debe establecer como vista de contenido como alternativa a invocar a setContentView() en onCreate(). Esto no cambia el requisito de que tu subclase tenga un constructor sin argumentos.

Versión 1.1.0-rc01

2 de julio de 2019

Lanzamiento de androidx.appcompat:appcompat:1.1.0-rc01 y androidx.appcompat:appcompat-resources:1.1.0-rc01. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.

Correcciones de errores

  • DayNight ahora privilegia correctamente a configChanges (aosp/981105).
  • Solo se llama a onConfigurationChanged en las actividades iniciadas (aosp/987483).

Versión 1.1.0-beta01

5 de junio de 2019

Lanzamiento de androidx.appcompat:appcompat:1.1.0-beta01 y androidx.appcompat:appcompat-resources:1.1.0-beta01. Para conocer las confirmaciones incluidas en esta versión, consulta este artículo.

Correcciones de errores

  • Nos aseguramos de limpiar los receptores en AppCompatDialogs (aosp/959376).
  • Se agregó compatibilidad con buttonGravity=center_vertical en la barra de herramientas (b/130361721).
  • Se corrigió el desplazamiento horizontal del ícono giratorio (b/79477181).

Versión 1.1.0-alpha05

7 de mayo de 2019

Lanzamiento de androidx.appcompat:appcompat:1.1.0-alpha05 y androidx.appcompat:appcompat-resources:1.1.0-alpha05. Para conocer las confirmaciones incluidas en esta versión, consulta este artículo.

Nuevas funciones

Correcciones de errores

  • Diversas correcciones en el modo DayNight.
  • Se invalidó el contorno en cualquier cambio de fondo en ActionBar.
  • Se corrigió el desplazamiento del widget del ícono giratorio.
  • Se corrigieron los fondos de ventanas de conjuntos personalizados que se anulaban en AlertDialog.

Versión 1.1.0-alpha04

3 de abril de 2019

Lanzamiento de androidx.appcompat:appcompat:1.1.0-alpha04 y androidx.appcompat:appcompat-resources:1.1.0-alpha04. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.

Nuevas funciones

  • Se agregó una nueva familia de temas ThemeOverlay.AppCompat.DayNight, que deberían usarse cuando se utiliza la función DayNight.

Cambios en la API

  • AppCompatActivity ahora contiene un segundo constructor que toma un @LayoutRes int, que a su vez reemplaza el comportamiento anterior de anotar tu clase AppCompatActivity con @ContentView. Este enfoque funciona tanto en la app como en los módulos de las bibliotecas (b/128352521)

Correcciones de errores

  • Se fijaron las dependencias internas en versiones estables, en la medida de lo posible.
  • Se corrigió el desplazamiento de AppCompatSpinner en modo desplegable (b/124274573).
  • Solo se llama a applyOverrideConfiguration() si es necesario para DayNight.

Versión 1.1.0-alpha03

13 de marzo de 2019

Lanzamiento de androidx.appcompat:appcompat:1.1.0-alpha03 y androidx.appcompat:appcompat-resources:1.1.0-alpha03. Esta es la primera versión de appcompat-resources. Para obtener una lista completa de las confirmaciones incluidas en esta versión, consulta este vínculo.

Nuevas funciones

  • La nueva biblioteca appcompat-resources incluye API que permiten que las apps carguen y ajusten el tono de elementos de diseño (incluidas las interfaces dibujables en vector) en versiones anteriores de la plataforma. Esta es la misma funcionalidad que antes formaba parte del módulo appcompat, pero ahora está disponible sin la sobrecarga de portabilidad completa a versiones anteriores de appcompat para material design, que incluye widgets, diálogos, modo nocturno, etc.
  • Correcciones importantes en la compatibilidad con el modo DayNight.
  • Nueva opción MODE_NIGHT_AUTO_BATTERY para el modo DayNight.
  • Ajuste de tono en los elementos de diseño de AppCompatTextView.
  • Ahora se puede dar estilo a la barra de herramientas ampliada con listas de estados de colores temáticos.
  • Ahora se pueden usar colores que hagan referencia a los atributos del tema para los íconos de menú.
  • Se puede configurar el nuevo atributo app:menu en una barra de herramientas para proporcionar el contenido del menú durante el período de aumento.

Correcciones de errores

  • Se corrigió el modo de tono predeterminado en ImageView en la versión 21.
  • Se corrigió el mensaje emergente de descarte incorrecto al rotar el dispositivo.
  • Se corrigió DayNight y ya no respeta configChanges en el manifiesto.
  • Se corrigió el cambio a MODE_NIGHT_FOLLOW_SYSTEM, que no funcionaba. (b/111345020).
  • Se corrigió WebView para restablecer los recursos de DayNight (b/37124582).

Versión 1.1.0-alpha02

7 de febrero de 2019

Lanzamiento de androidx.appcompat:appcompat 1.1.0-alpha02.

Nuevas funciones

  • Manejo de elementos de diseño de recursos específicos extraídos en un contenido atractivo (aosp/870976).
  • Se permite que los elementos titleTextColor y subtitleTextColor de la barra de herramientas usen una ColorStateList y agreguen sobrecargas de ColorStateList de los métodos setTitleTextColor y setSubtitleTextColor (aosp/867489).

Correcciones de errores

  • Se corrigió fontFamily, que no funcionaba en API de niveles inferiores a 24 (aosp/807054).
  • Se corrigió un error por el que textFontWeight no funcionaba cuando una actividad se extendía desde AppCompatActivity (aosp/847640).
  • Se corrigió el error que hacía que el texto del título ubicado en la ventana emergente del widget giratorio (cuando se usaba el modo de diálogo) no usara la fuente especificada en fontFamily (aosp/789994).
  • Se corrigió el error que impedía que los widgets AppCompatCheckBox y AppCompatRadioButton pudieran cambiar el tono del fondo (aosp/825160).
  • Se corrigió un error por el que AppCompat no anulaba android: list styles (aosp/862350).

Versión 1.1.0-alpha01

3 de diciembre de 2018

Nuevas funciones

  • AppCompatTextView ahora es compatible con los elementos de diseño compuestos app:drawableLeftCompat, app:drawableTopCompat, app:drawableRightCompat, app:drawableBottomCompat, app:drawableStartCompat y app:drawableEndCompat, que admiten tipos de elementos de diseño compatibles con versiones anteriores, como VectorDrawableCompat.

  • Los elementos de diseño predeterminados AppCompatCheckBox y AppCompatRadioButton ahora incluyen animaciones de cambios de estado de verificación.

Cambios en la API

  • aosp/740385: ActionBarOverlayLayout ahora implementa NestedScrollingParent2 y NestedScrollingParent3, lo que le permite implementar con facilidad la funcionalidad más reciente en el desplazamiento anidado 3. Si, por el momento, el código del desarrollador anula ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int), es probable que ya no se llame a dicho elemento, por lo que se debería anular ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[]).

Versión 1.0.2

Versión 1.0.2

7 de noviembre de 2018

Lanzamiento de corrección de errores de core-1.0.1 y appcompat-1.0.2.

Correcciones de errores

  • Se corrigió el error por el que PrecomputedTextCompat fallaba cuando se usaba con AppCompatTextView con compatibilidad para escritura de derecha a izquierda (RTL) (b/113070424).

Versión 1.0.0

Versión 1.0.0

7 de noviembre de 2018

Nuevas funciones