Appcompat
Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
29 de maio de 2024 | 1.7.0 | - | - | - |
Como declarar dependências
Para adicionar uma dependência a Appcompat, é preciso adicionar o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para ver mais informações.
Adicione as dependências dos artefatos necessários no arquivo build.gradle
para
seu app ou módulo:
Groovy
dependencies { def appcompat_version = "1.7.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" }
Kotlin
dependencies { val appcompat_version = "1.7.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 ver mais informações sobre dependências, consulte Adicionar dependências de build.
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
Versão 1.7
Versão 1.7.0
29 de maio de 2024
Lançamento de androidx.appcompat:appcompat:1.7.0
e androidx.appcompat:appcompat-resources:1.7.0
. A versão 1.7.0 contém estas confirmações (link em inglês).
Mudanças importantes desde a versão 1.6.0
AppCompatDialog
agora define corretamenteLifecycleOwner
,SavedStateRegistryOwner
eOnBackPressedDispatcherOwner
na visualização de decoração da caixa de diálogo usando as APIsViewTree
, corrigindo problemas ao hospedar umComposeView
em umAppCompatDialog
- A
AppCompatActivity
agora define oViewTreeOnBackPressedDispatcherOwner
para que seja possível extrair o agente da visualização - A performance do
SupportMenuInflater
melhorou significativamente. Locale.getDefault()
agora retorna a localidade do sistema após uma inicialização a frioLinearLayoutCompat
agora preserva os parâmetros de layout de margem
Atualizações de dependência
AppCompat
agora depende da Activity 1.7.0.AppCompat
agora depende do Fragment 1.5.4.
Versão 1.7.0-rc01
14 de maio de 2024
Lançamento de androidx.appcompat:appcompat:1.7.0-rc01
e androidx.appcompat:appcompat-resources:1.7.0-rc01
. A versão 1.7.0-rc01 contém estas confirmações.
Versão 1.7.0-beta01
1o de maio de 2024
Lançamento de androidx.appcompat:appcompat:1.7.0-beta01
e androidx.appcompat:appcompat-resources:1.7.0-beta01
. A versão 1.7.0-beta01 contém estas confirmações (link em inglês).
Versão 1.7.0-alpha03
26 de julho de 2023
Lançamento de androidx.appcompat:appcompat:1.7.0-alpha03
e androidx.appcompat:appcompat-resources:1.7.0-alpha03
. A versão 1.7.0-alpha03 contém estas confirmações.
Novos recursos
Suporte à localização por app em contextos fora da atividade (I58e753). Quatro novas APIs foram adicionadas para esse recurso:
LocaleManagerCompat.getApplicationLocales()
: para os desenvolvedores tirarem as localidades por app do escopo da atividade.ContextCompat.getString()
: retorna strings localizadas com base nas localidades por app.ContextCompat.getContextForLanguage()
: o contexto retornado por esse método respeitará as localidades por app.ConfigurationCompat.setLocales()
: para APIs acima, define a localidade da configuração.
Outras mudanças na API
- Adição de
setLineHeight(unit, lineHeight)
às classes de compatibilidadeTextView
(Ia9fa9). - Adição de
setLineHeight(unit, lineHeight)
às classes de compatibilidadeTextView
(Ib2ee1). - Adição de
setLineHeight(unit, lineHeight)
às classes de compatibilidadeTextView
(I15716).
Correções de bugs
AppCompatDialog
agora define corretamenteLifecycleOwner
,SavedStateRegistryOwner
eOnBackPressedDispatcherOwner
na visualização de decoração da caixa de diálogo usando as APIsViewTree
, corrigindo problemas ao hospedar umComposeView
em umAppCompatDialog
AppCompat
agora depende da Activity 1.7.0. (Ib28ab, b/261314581).- Melhoria significativa no desempenho de
SupportMenuInflater
(I0b087).
Versão 1.7.0-alpha02
8 de fevereiro de 2023
Lançamento de androidx.appcompat:appcompat:1.7.0-alpha02
e androidx.appcompat:appcompat-resources:1.7.0-alpha02
. A versão 1.7.0-alpha02 contém estas confirmações.
Correções de bugs
- Correção de um vazamento de memória no
AppCompatDelegate.getLocaleManagerForApplication()
(44b57fd). - O
AppCompat
agora depende do Fragment 1.5.4 (I54dcd).
Versão 1.7.0-alpha01
5 de outubro de 2022
Lançamento de androidx.appcompat:appcompat:1.7.0-alpha01
e androidx.appcompat:appcompat-resources:1.7.0-alpha01
. A versão 1.7.0-alpha01 contém estas confirmações.
Correções de bugs
- A
AppCompatActivity
agora define oViewTreeOnBackPressedDispatcherOwner
para que seja possível extrair o agente da visualização (I1a115, b/235416503). Locale.getDefault()
agora retorna a localidade do sistema após uma inicialização a frio (I6a94b).LinearLayoutCompat
agora preserva os parâmetros de layout de margem (Id2af4).
Versão 1.6.1
Versão 1.6.1
8 de fevereiro de 2023
Lançamento de androidx.appcompat:appcompat:1.6.1
e androidx.appcompat:appcompat-resources:1.6.1
. A versão 1.6.1 contém estas confirmações.
Correções de bugs
- Correção de um vazamento de memória no
AppCompatDelegate.getLocaleManagerForApplication()
(44b57fd).
Versão 1.6.0
Versão 1.6.0
11 de janeiro de 2023
Lançamento de androidx.appcompat:appcompat:1.6.0
e androidx.appcompat:appcompat-resources:1.6.0
. A versão 1.6.0 contém estas confirmações.
Mudanças importantes desde a versão 1.5.0
- Agora é possível personalizar localidades de apps. Consulte
AppCompatDelegate.setApplicationLocales(LocaleListCompat)
para mais informações. Oferece compatibilidade com versões anteriores da nova API de preferências por idioma disponível no Android 13. - Atualizações de nulidade para alinhamento com o SDK do Android 13 (Tiramisu, API de nível 33).
- As classes de compatibilidade
DrawableWrapper
,DrawableContainer
eStateListDrawable
foram adicionadas à plataforma da API pública.
Versão 1.6.0-rc01
7 de setembro de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-rc01
e androidx.appcompat:appcompat-resources:1.6.0-rc01
. A versão 1.6.0-rc01 contém estas confirmações.
Correções de bugs
- A
AppCompatActivity
agora define oViewTreeOnBackPressedDispatcherOwner
para que seja possível extrair o agente da visualização (I1a115, b/235416503). - Foi corrigido um bug que substituiu a configuração transmitida para
onConfigurationChanged
, o que causava problemas em testes que injetavam as próprias configurações personalizadas usandoonConfigurationChanged
.
Versão 1.6.0-beta01
10 de agosto de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-beta01
e androidx.appcompat:appcompat-resources:1.6.0-beta01
. A versão 1.6.0-beta01 contém estas confirmações.
Mudanças na API
- As classes de compatibilidade
DrawableWrapper
,DrawableContainer
eStateListDrawable
foram movidas para a API pública (I37f3e, b/227789566). - Introdução de uma nova fábrica para infladores de layout assíncronos (Ia657b).
Correções de bugs
- A
Toolbar
agora vai chamaronPrepareMenu()
antes do menu ser mostrado, em vez de fazer isso incondicionalmente quando o menu é criado (I2a58d, b/232206677). - A
AppCompat
agora depende explicitamente doLifecycle
2.5.1
eSavedState
1.2.0
(I7e3e2). - Adicionamos suporte ao callback invocado para a classe
AppCompatDelegate
e à implementação da barra de ferramentas fornecida pelaAppCompat
(I24062). - As APIs
AppCompat
foram finalizadas para a versão 1.5.0-beta01 (I2a43d, b/236866227). - As APIs
AppCompat
foram finalizadas para a versão 1.5.0-beta01 (I2a43d, b/236866227).
Versão 1.6.0-alpha05
15 de junho de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-alpha05
e androidx.appcompat:appcompat-resources:1.6.0-alpha05
. A versão 1.6.0-alpha05 foi desenvolvida em uma ramificação de pré-lançamento particular e não tem confirmações públicas.
Mudanças na API
- Atualizações de nulidade vão ser alinhadas com a plataforma final da API no SDK do Tiramisu Beta 3.
- O
minCompileSdk
agora é 33 para se alinhar com o SDK do Tiramisu Beta 3.
Versão 1.6.0-alpha04
18 de maio de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-alpha04
e androidx.appcompat:appcompat-resources:1.6.0-alpha04
. Essa biblioteca foi desenvolvida em uma ramificação de pré-lançamento particular. Portanto, nenhum registro de confirmação está disponível.
Mudanças na API
- Foi adicionada uma API para substituir a restrição de largura de SwitchCompat para uso pelo MDC-Android.
Correções de bugs
- A configuração gerenciada é evitada quando a configuração muda fora de attachBaseConfig.
Versão 1.6.0-alpha03
27 de abril de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-alpha03
e androidx.appcompat:appcompat-resources:1.6.0-alpha03
.
Esta versão exige o Android 13 Beta 1 para compilar, e não há garantias de que ela será compatível com o ambiente de execução em futuras prévias para desenvolvedores.
Novos recursos
- Suporte para a seleção de idioma personalizado em todo o app via
AppCompatDelegate.setApplicationLocales()
. Delega a implementação da plataforma na API 33 e mais recentes.
Versão 1.6.0-alpha01
23 de fevereiro de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-alpha01
e androidx.appcompat:appcompat-resources:1.6.0-alpha01
. A versão 1.6.0-alpha01 foi criada com base em uma ramificação interna e não tem confirmações visíveis publicamente.
Esta versão exige o Android Tiramisu DP1 para compilar, e não há garantias de que ela será compatível com ambientes de execução em versões futuras da prévia para desenvolvedores.
Novos recursos
- Agora é possível personalizar localidades de apps. Consulte
AppCompatDelegate.setApplicationLocales(LocaleListCompat)
para ver mais informações. Oferece compatibilidade com versões anteriores da nova API de preferências por idioma disponível no Android 13.
Versão 1.5.1
Versão 1.5.1
7 de setembro de 2022
Lançamento de androidx.appcompat:appcompat:1.5.1
e androidx.appcompat:appcompat-resources:1.5.1
. A versão 1.5.1 contém estas confirmações.
Atualizações de dependência
- A
AppCompat
agora depende explicitamente do Lifecycle2.5.1
e do SavedState1.2.0
(I7e3e2).
Versão 1.5.0
Versão 1.5.0
10 de agosto de 2022
Lançamento de androidx.appcompat:appcompat:1.5.0
e androidx.appcompat:appcompat-resources:1.5.0
. A versão 1.5.0 contém estas confirmações.
Mudanças importantes desde a versão 1.4.0
- Esta versão estável inclui melhorias na estabilidade do modo noturno, correções de bugs e suporte a tonalidades de drawable composto para widgets de texto com suporte à AppCompat, assim como melhorias à usabilidade da API. Consulte as notas da versão anteriores da série 1.5.0 para ver uma lista detalhada das mudanças.
Versão 1.5.0-rc01
27 de julho de 2022
Lançamento de androidx.appcompat:appcompat:1.5.0-rc01
e androidx.appcompat:appcompat-resources:1.5.0-rc01
. A versão 1.5.0-rc01 contém estas confirmações.
Correções de bugs
- Correção de um problema em que o wrapper de contexto do AppCompat reutilizava a implementação de recursos de apoio do contexto do aplicativo, fazendo com que o
uiMode
fosse substituído (Idf9d5).
Versão 1.5.0-beta01
13 de julho de 2022
Lançamento de androidx.appcompat:appcompat:1.5.0-beta01
e androidx.appcompat:appcompat-resources:1.5.0-beta01
. A versão 1.5.0-beta01 contém estas confirmações.
Mudanças na API
- Foi adicionada uma flag substituível para desativar o ajuste padrão de largura da chave (I37cb7).
- A anotação
@FloatRange
foi adicionada à API Getter da posição da chave (If524c). - Foram adicionadas anotações de nulidade ausentes a
AnimatedStateListDrawableCompat
(Ieb4ec).
Correções de bugs
- As APIs
AppCompat
foram finalizadas para a versão 1.5.0-beta01 (I2a43d, b/236866227). - O valor de
className
foi mudado para queActionMenuItemView
o trate como umButton
(I5ee1c).
Versão 1.5.0-alpha01
6 de abril de 2022
Lançamento de androidx.appcompat:appcompat:1.5.0-alpha01
e androidx.appcompat:appcompat-resources:1.5.0-alpha01
. A versão 1.5.0-alpha01 contém estas confirmações.
Mudanças na API
- Adição de uma nova API para expor a posição da chave para as subclasses (I9bfb4).
- Atualização de nulidade para corresponder ao Tiramisu DP2 (I0cbb7).
- Backport da tonalidade do drawable composto para widgets derivados da TextView (Idf98c, b/165822337).
AppCompatDialog
agora estendeComponentDialog
para compatibilidade comOnBackPressedDispatcher
(Id9b91, b/217620781).SearchView.onQueryRefine()
agora tem visibilidade protegida para permitir substituições (I6cce0, b/212882845).
Correções de bugs
- AppCompat
Toolbar
agora chama a APIonPrepareMenu()
doMenuHostHelper
(I9b9b5, b/227376894). AppCompatEditText
,AppCompatAutoCompleteEditText
,AppCompatMultiAutoCompleteEditText
não redefinem mais elementos clicáveis ou longClickable no construtor quando definidos em XML (Ic5066, b/221094907).AppCompatEditText
,AppCompatAutoCompleteTextView
eAppCompatMultiAutoCompleteTextView
não vão chamar a substituição desetKeyListener
durante o construtor (I5c13a, b/208480173).- O AppCompat não vai unir instâncias do
NumberKeyListener
transmitidas para osetKeyListener
, permitindo que aTextView
configure corretamente a localidade emNumberKeyListeners
(Ibf113, b/207119921). - Foi corrigido um problema com todas as subclasses
NumberKeyListener
apresentadas no AppCompat 1.4.0, que permitiam que caracteres inesperados, como pontuação, fossem inseridos (Iede7a, b/207119921).
Versão 1.4.2
Versão 1.4.2
1º de junho de 2022
Lançamento de androidx.appcompat:appcompat:1.4.2
e androidx.appcompat:appcompat-resources:1.4.2
. A versão 1.4.2 contém estas confirmações.
Correções de bugs
- Foi corrigida uma falha em que
AppCompatDelegateImpl
fazia uma chamada interna paraensureSubDecor
antes da criação da barra de ações (aosp/2048349, b/226648941).
Versão 1.4.1
12 de janeiro de 2022
Lançamento de androidx.appcompat:appcompat:1.4.1
e androidx.appcompat:appcompat-resources:1.4.1
. A versão 1.4.1 contém estas confirmações.
Correções de bugs
AppCompatEditText
,AppCompatAutoCompleteTextView
eAppCompatMultiAutoCompleteTextView
não vão chamar osetKeyListener
modificado durante o construtor (I5c13a, b/208480173).Emoji2
não vai unir instâncias deNumberKeyListener
, permitindo que a localidade seja configurada pela visualização de texto.- A Appcompat não vai unir as instâncias do
NumberKeyListener
transmitidas para osetKeyListener
, permitindo que aTextView
configure corretamente a localidade nosNumberKeyListeners
(Ibf113, b/207119921).
- A Appcompat não vai unir as instâncias do
- Foi corrigido um problema em todas as subclasses
NumberKeyListener
lançadas na Appcompat 1.4.0, que permitiam que caracteres inesperados, como pontuação, fossem inseridos (b/207119921) (Iede7a, b /207119921).
Versão 1.4.0
Versão 1.4.0
17 de novembro de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0
e androidx.appcompat:appcompat-resources:1.4.0
. A versão 1.4.0 contém estas confirmações.
Mudanças importantes desde a versão 1.3.0
- A biblioteca agora é destinada ao nível de linguagem Java 8.
- O suporte a emojis atualizáveis agora é ativado por padrão na biblioteca androidx.emoji2.
- Melhoramos a inspeção de atributo no Layout Inspector do Android Studio (I02d55).
- Foi incluído o suporte a recursos de tonalidade e drawables vetoriais aninhados nos backports de carregamento do recurso AppCompat. No entanto, isso significa que os apps não podem substituir o getDrawable() em um objeto Resources personalizado quando os backports estão ativados (Ia6b03, b/176129022).
- Adicionamos marcas de seleção e um plano de fundo tingível com backport a CheckedTextView (I8575c).
Versão 1.4.0-rc01
27 de outubro de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-rc01
e androidx.appcompat:appcompat-resources:1.4.0-rc01
. A versão 1.4.0-rc01 contém estas confirmações.
Versão 1.4.0-beta01
29 de setembro de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-beta01
e androidx.appcompat:appcompat-resources:1.4.0-beta01
. A versão 1.4.0-beta01 contém estas confirmações.
Mudanças na API
- A
Toolbar
do AndroidX AppCompat agora é umMenuHost
e pode gerenciarMenuProvider
s (I5cd95).
Correções de bugs
- O gerenciamento da AppCompatProgressBar para as barras de progresso da lista de camadas foi corrigido (I6ece3, b/142004509).
android:digits
são retidos corretamente noAppCompatEditText
. Isso corrige o bug 193047889 introduzido na versão 1.4.0-alpha03 da AppCompat (I4b4fc, b/193047889).- O SDK OnReceiveContentListener foi integrado e oferece suporte a APIs lib (Ic6914, b/173814913).
Versão 1.4.0-alpha03
30 de junho de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-alpha03
e androidx.appcompat:appcompat-resources:1.4.0-alpha03
. A versão 1.4.0-alpha03 contém estas confirmações.
Novos recursos
- A biblioteca agora é destinada ao nível de linguagem Java 8.
- O suporte a emoji2 foi adicionado para mais subclasses TextView (
AppCompatMultiAutoCompleteTextView
,AppCompatAutoCompleteTextView
,AppCompatRadioButton
,AppCompatCheckBox
).
Mudanças na API
- Uma API foi adicionada para configurar uma InputConnection para usar View.PerformReceberContent para processar chamadas do IME (editor de método de entrada, na sigla em inglês) para InputConnection.commitContent (I3a2ad).
- A compatibilidade com EmojiCompat foi adicionada à
AppCompatMultiAutoCompleteTextView
(Ifece0). - O suporte a EmojiCompat foi adicionado à
AppCompatAutoCompleteTextView
(Ia1f4b). - O suporte a EmojiCompat foi adicionado ao
AppCompatRadioButton
(If08af). - O suporte a EmojiCompat foi adicionado à
AppCompatCheckBox
(I2b3bc). - Agora, o uso de um
KeyListener
nulo é permitido emAppCompatEditText
. Isso vai reverter a anotação não nula que foi adicionada a AppCompatEditText na versão 1.4-alpha01 e restaurar o comportamento anterior quando transmitida como nula (I21482, b/189559345). PopupMenu.setForceShowIcon
foi adicionado para paridade com as APIs da plataforma (I43bb3, b/182789798).
Correções de bugs
- Corrigido bug em AppCompatEditText que redefinirá o inputType especificado em XML para remover variações. Esse bug foi introduzido na AppCompat 1.4.0-alpha01 (I9df36, b/191061070).
Versão 1.4.0-alpha02
2 de junho de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-alpha02
e androidx.appcompat:appcompat-resources:1.4.0-alpha02
. A versão 1.4.0-alpha02 contém estas confirmações.
Mudanças na API
- Adição do construtor
AppCompatDialogFragment
, que usa um ID de layout (Icbf22, b/188119987). - A compatibilidade com o Layout Inspector foi aprimorada (I02d55).
- Pacote em
emoji2-views-helper
renomeado comoandroidx.emoji2.viewsintegration
. Essa é uma alteração interruptiva para AppCompat1.4.0-alpha01
, e os apps precisam garantir que a dependência de AppCompat seja atualizada para usar a nova versão de emoji2 (Ie8397).
Correções de bugs
- Correção do problema em que as atividades interrompidas não recebiam mudanças de configuração das alterações no modo noturno instrumentadas pelo AppCompat (I8fa8f, b/188681415).
- Correção do bug em
AppCompatEditText
que fazia com que as visualizações fossem focalizáveis mesmo quandoandroid:focusable="false"
era especificado no XML. Esse bug foi introduzido no AppCompat1.4.0-alpha01
(Ib9412).
Versão 1.4.0-alpha01
18 de maio de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-alpha01
e androidx.appcompat:appcompat-resources:1.4.0-alpha01
. A versão 1.4.0-alpha01 contém estas confirmações.
Mudanças na API
- O suporte a EmojiCompat foi integrado a vários widgets AppCompat (Id409b, If7a1a, Ic262d, Ib5f4a e I4fb3c).
- Foi incluído o suporte a recursos de tonalidade e drawables vetoriais aninhados nos backports de carregamento do recurso AppCompat. No entanto, isso significa que os apps não podem modificar o
getDrawable()
em um objeto Resources personalizado quando os backports estão ativados (Ia6b03, b/176129022). - A compatibilidade com o Layout Inspector foi aprimorada (I6d771).
Correções de bugs
- Foi corrigida uma situação em que chamar setSupportActionBar depois da configuração do callback da janela substituía o callback (Ie43ee, b/186791590).
- Foi incluída uma solução alternativa para um problema nos SDKs 29 e 30 em que os recursos ColorStateListDrawable clonados do cache de drawable não carregavam uma cor padrão até receber uma mudança de estado (Iedb4b).
- NPE foi evitado ao lidar com callbacks nulos de modo de ação de seleção personalizada em visualizações compatíveis com AppCompat (I033c7, b/173435375).
Atualizações de dependência
- A partir do AppCompat
1.5.0
: o AppCompat agora depende do Fragment1.3.4
(I13089). - A partir do AppCompat
1.5.0
: o AppCompat agora depende da Activity1.2.3
(I815b7). - A partir do AppCompat
1.5.0
: o AppCompat agora depende do Lifecycle2.3.1
(Ia75a1).
Contribuição externa
- Plano de fundo tingível com backport e marca de seleção para
CheckedTextView
(I8575c).
Versão 1.3.1
Versão 1.3.1
21 de julho de 2021
Lançamento de androidx.appcompat:appcompat:1.3.1
e androidx.appcompat:appcompat-resources:1.3.1
. A versão 1.3.1 contém estas confirmações.
Atualizações de dependência
- O AppCompat agora depende das bibliotecas Activity
1.2.4
e Fragment1.3.6
. As correções dessas versões são incluídas por padrão durante o uso do AppCompat1.3.1
(I8fbec).
Versão 1.3.0
Versão 1.3.0
18 de maio de 2021
Lançamento de androidx.appcompat:appcompat:1.3.0
e androidx.appcompat:appcompat-resources:1.3.0
. A versão 1.3.0 contém estas confirmações.
Mudanças importantes desde a versão 1.2.0
- Foi corrigida a propagação de atributos
android:theme
em layouts<include>
d em dispositivos anteriores ao Lollipop. - Foi reduzido o tamanho da biblioteca ao converter vários recursos PNG em VectorDrawables.
- O suporte a eventos de arrastar e soltar foi adicionado ao
AppCompatEditText
usando oOnReceiveContentListener
. - Houve uma atualização para oferecer compatibilidade com mudanças no tratamento de encarte de janela do Android 11.
- O suporte a RTL foi adicionado a itens de menu com ícones.
O suporte à inserção de conteúdo avançado (por exemplo, colar uma imagem) foi adicionado ao
AppCompatEditText
.Dependências atualizadas: o
appcompat
atualizou muitas dependências transitórias para oferecer suporte a novas funções e correções:- O Fragment
1.1.0
foi atualizado para Fragment1.3.4
. - A Activity 1.0.0 foi atualizada para Activity
1.2.3
. - O Lifecycle
2.0.0
foi atualizado para Lifecycle2.3.1
. - O Core 1.3.0 foi atualizado para Core
1.5.0
.
- O Fragment
Versão 1.3.0-rc01
24 de março de 2021
Lançamento de androidx.appcompat:appcompat:1.3.0-rc01
e androidx.appcompat:appcompat-resources:1.3.0-rc01
. A versão 1.3.0-rc01 contém estas confirmações.
Correções de bugs
- Impede que as permissões sejam revogadas antes do processamento da inserção de conteúdo do IME (editor de método de entrada, na sigla em inglês).
Atualizações de dependência
- AppCompat agora depende das bibliotecas Activity
1.2.2
, Fragment1.3.2
e Lifecycle2.3.1
(Ia75a1).
Contribuição externa
- A propagação do atributo
android:theme
foi corrigida em layouts<include>
para dispositivos anteriores ao Lollipop (Simon Berner, Opera).
Versão 1.3.0-beta01
13 de janeiro de 2021
Lançamento de androidx.appcompat:appcompat:1.3.0-beta01
e androidx.appcompat:appcompat-resources:1.3.0-beta01
. A versão 1.3.0-beta01 contém estas confirmações.
Novos recursos
- Drawables de modo de ação no nível do tema foram substituídos por fontes vetoriais. Isso pode causar pequenas mudanças na aparência de ícones individuais (I741a6).
Mudanças na API
- Integração do arraste e solte (eventos de soltar) no AppCompatEditText com OnReceiveContentListener (Ib26c9, b/175343405).
OnReceiveContentListener
e APIs relacionadas atualizadas. Consulte as mudanças na biblioteca androidx.core para saber mais detalhes (Ib4616, b/173814913).- Widget.RichContentReceiverCompat movido para view.OnReceiveContentListener (Ifdab7, b/173814913).
- As APIs para fornecer e recuperar o texto inicial correspondente passaram por backport recuadas para
EditorInfoCompat
. Elas permitem que apps IME (editor de método de entrada, na sigla em inglês) evitem latência IPC adicional (Ie3809).
Versão 1.3.0-alpha02
19 de agosto de 2020
Lançamento de androidx.appcompat:appcompat:1.3.0-alpha02
e androidx.appcompat:appcompat-resources:1.3.0-alpha02
. A versão 1.3.0-alpha02 contém estas confirmações.
Correções de bugs
- Drawables PNG AppCompatRatingBar foram substituídos por fontes vetoriais. Isso pode causar pequenas mudanças na aparência de estrelas individuais. (I6b99d)
- Atualização do WindowInsetsCompat para APIs do Android 11 (I3df9e).
- O suporte a RTL foi adicionado a itens de menu com ícones (I2f5c5).
Atualizações de dependência
- O AppCompat atualizou a dependência do fragmento
1.1.0
para o fragmento1.3.0-alpha08
. É altamente recomendável ler as notas da versão do fragmento1.2.0
para entender as principais mudanças introduzidas na versão anterior do fragmento. - O AppCompat atualizou a dependência da atividade
1.0.0
para a atividade1.2.0-alpha08
. É altamente recomendável ler as notas da versão da atividade1.1.0
para entender as principais mudanças introduzidas na versão anterior da atividade.AppCompatActivity
agora usa a APIOnContextAvailableListener
introduzida na atividade1.2.0-alpha08
para configurar oAppCompatDelegate
. Todos os listeners adicionados às subclasses daAppCompatActivity
serão executados depois desse listener. (I513da)
Versão 1.3.0-alpha01
20 de maio de 2020
Lançamento de androidx.appcompat:appcompat:1.3.0-alpha01
e androidx.appcompat:appcompat-resources:1.3.0-alpha01
. A versão 1.3.0-alpha01 contém estas confirmações.
Novos recursos
- Adicione uma nova regra Lint para sinalizar chamadas para setActionBar em atividades que estendem AppCompatActivity
- Foi adicionado suporte a
ViewTreeLifecycleOwner
do Lifecycle2.3.0-alpha01
,ViewTreeViewModelStoreOwner
do Lifecycle2.3.0-alpha03
eViewTreeSavedStateRegistryOwner
do SavedState1.1.0-alpha01
ao usar umaView
dentro daAppCompatActivity
(b/151603528, aosp/1300264). - Adição da API comum para inserir conteúdo avançado (por exemplo, colar uma imagem). O novo callback fornece uma única API que os apps podem implementar para oferecer suporte às diferentes maneiras de inserir conteúdo avançado. Por enquanto, a API é adicionada apenas a
AppCompatEditText
e vai ser invocada para os seguintes caminhos de código:- colar da área de transferência
- Inserção de conteúdo do IME (
InputConnection.commitContent
) (I22bf7).
Correções de bugs
- Do AppCompat
1.2.0-rc01
: o AppCompat não chama mais oonMenuOpened()
com um menunull
(b/142843126). - Resolução correta das cores de link e hint em dispositivos mais antigos quando TextViewCompat.setTextAppearance é chamado com um estilo de aparência de texto que tem listas de estado de cor que se referem a atributos de cor para temas (b/154702995).
Versão 1.2.0
Versão 1.2.0
5 de agosto de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0
e androidx.appcompat:appcompat-resources:1.2.0
. A versão 1.2.0 contém estas confirmações.
Principais mudanças desde a versão 1.1.0
- Correção da compatibilidade com casos de uso de modificação da configuração, incluindo localidades personalizadas e escalas de fonte. Clique aqui para ver um exemplo de como implementar modificações corretamente usando
appcompat:1.2.0
. - O uso de
AppCompatDelegate.attachBaseContext()
foi descontinuado. Se você está chamando ou modificando esse método, useAppCompatDelegate.attachBaseContext2()
. - O uso de
CollapsibleActionView
foi descontinuado. Essa interface não é mais necessária, use a interfaceandroid.view.CollapsibleActionView
fornecida pela plataforma.
Versão 1.2.0-rc02
22 de julho de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-rc02
e androidx.appcompat:appcompat-resources:1.2.0-rc02
. A versão 1.2.0-rc02 contém estas confirmações.
Correções de bugs
- Correção de um problema relacionado ao modo noturno, em que chamar
AppCompatDelegate.setDefaultNightMode
usando uma caixa de diálogo falhava ao recriar atividades e aplicar o novo modo (aosp/1348308, b/158923881)
Versão 1.2.0-rc01
14 de maio de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-rc01
e androidx.appcompat:appcompat-resources:1.2.0-rc01
. A versão 1.2.0-rc01 contém estas confirmações.
Mudanças na API
AppCompatDelegate.setLocalNightMode
foi marcado para exigir a versão 17 ou mais recente do SDK devido a um problema de plataforma com mudanças de configuração entre atividades em SDKs anteriores.
Correções de bugs
AppCompatDelegate.setLocalNightMode
agora pode ser chamado antes deActivity.attachBaseContext
.- Correção do consumo do encarte de
ActionBarOverlayLayout
que estava usando incorretamente as encartes em cache. - AppCompat não chama mais
onMenuOpened()
com um menunull
(b/142843126, link em inglês)
Versão 1.2.0-beta01
1º de abril de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-beta01
e androidx.appcompat:appcompat-resources:1.2.0-beta01
. A versão 1.2.0-beta01 contém estas confirmações.
Novos recursos
- Foram adicionadas as seguintes novas regras de lint que sinalizam usos incorretos de AppCompat nos seguintes cenários:
- Carregar listas de estados de cor: sugere o uso das APIs
ContextCompat
eAppCompatResources
para compatibilidade com versões anteriores - Carregar drawables: sugere o uso das APIs
ContextCompat
eResourcesCompat
para compatibilidade com versões anteriores - Usar listas de estados de cor com o atributo Alfa: sinalizações com o atributo
android:alpha
ausente que levarão à exibição incorreta em algumas versões da plataforma - Tonalizar visualizações de imagem: sinaliza a falta de uso de
app:tint
, que leva à exibição incorreta em versões mais antigas da plataforma - Usar drawables compostos e tonalidade em visualizações de texto: sugere o uso de atributos compatíveis e APIs para compatibilidade com versões anteriores
- Carregar listas de estados de cor: sugere o uso das APIs
Correções de bugs
- Foi corrigido um problema em que
ActionBarOverlayLayout
(ação de decoração da janela) não estava distribuindo WindowInsets corretamente. - Correção de problemas na tonalidade de drawables e na aparência do texto em versões mais antigas da plataforma.
- Foi corrigido um problema em que
androidx.appcompat:appcompat:1.1.0
causava uma falha na WebView quando o usuário tocava nela e a mantinha pressionada (b/141351441). - Correções implementadas para problemas com manipulação de contexto base e recuperação de serviços do sistema durante a inicialização da atividade
Versão 1.2.0-alpha03
4 de março de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-alpha03
e androidx.appcompat:appcompat-resources:1.2.0-alpha03
. A versão 1.2.0-alpha03 contém estas confirmações.
Correções de bugs
- Foi corrigido um problema em que a proteção de status do modo de ação se estendia erroneamente para a barra de navegação e tinha a cor errada (Ia4a09).
- Foi corrigido um problema em que as atividades interrompidas não eram retomadas na API de nível 23 e anteriores (I45201).
Versão 1.2.0-alpha02
29 de janeiro de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-alpha02
e androidx.appcompat:appcompat-resources:1.2.0-alpha02
. A versão 1.2.0-alpha02 contém estas confirmações.
Correções de bugs
- Foi corrigido um problema em que o appcompat 1.1.0 fazia com que a WebView falhasse quando o usuário tocava nela e a mantinha pressionada (b/141351441).
- A tonalidade do drawable na TextView foi corrigida em relação a drawables de composição na API de nível 23 (aosp/1172194).
- Garantia de que o contexto base seja sempre um wrapper (aosp/1194355).
- Foram adicionadas algumas melhorias para ser mais inteligente ao modificar a configuração de contexto base (aosp/1204543).
- O
createConfigurationContext()
foi desativado para Roboletric (aosp/1186218).
Versão 1.2.0-alpha01
4 de dezembro de 2019
Lançamento de androidx.appcompat:appcompat:1.2.0-alpha01
e androidx.appcompat:appcompat-resources:1.2.0-alpha01
. A versão 1.2.0-alpha01 contém estas confirmações.
Correções de bugs
- As chamadas para PackageManager.getActivityInfo não falham mais no modo restrito e com as verificações de reconhecimento de inicialização ativadas
- Correções de tonalização de drawables no AppCompatButton
- Correções de tonalização e aparência do texto em versões mais antigas da plataforma
Versão 1.1.0
Versão 1.1.0
5 de setembro de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0
e androidx.appcompat:appcompat-resources:1.1.0
. As confirmações incluídas nessa versão podem ser encontradas neste link.
Mudanças importantes desde a versão 1.0.0
- Melhorias no modo escuro:
MODE_NIGHT_AUTO
e a alternação entre claro e escuro com base no horário atual agora foram suspensas. Considere usar uma configuração explícita ouMODE_NIGHT_AUTO_BATTERY
. - Acivity 1.0:
AppCompatActivity
agora se estende transitivamente doComponentActivity
de1.0.0
pelo Fragment1.1.0
. Consulte as notas de versão associadas para ver informações sobre as mudanças em cada biblioteca. - Construtor AppCompatActivity LayoutId: subclasses de
AppCompatActivity
agora podem optar por chamar um construtor emAppCompatActivity
que leva um IDR.layout
, indicando o layout que será definido como a visualização de conteúdo, em vez de chamarsetContentView()
emonCreate()
. Isso não altera a exigência de que sua subclasse tenha um construtor sem argumento.
Versão 1.1.0-rc01
2 de julho de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-rc01
e androidx.appcompat:appcompat-resources:1.1.0-rc01
. As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Correções de bugs
- O recurso DayNight agora respeita
configChanges
corretamente (aosp/981105). onConfigurationChanged
só é chamado em Activities iniciadas (aosp/987483).
Versão 1.1.0-beta01
5 de junho de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-beta01
e androidx.appcompat:appcompat-resources:1.1.0-beta01
. As confirmações incluídas nessa versão podem ser encontradas neste link.
Correções de bugs
- Limpeza dos receptores em AppCompatDialogs. (aosp/959376).
- Foi adicionado suporte a
buttonGravity=center_vertical
na barra de ferramentas (b/130361721). - Correção do deslocamento horizontal do ícone de carregamento (b/79477181).
Versão 1.1.0-alpha05
7 de maio de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-alpha05
e androidx.appcompat:appcompat-resources:1.1.0-alpha05
. As confirmações incluídas nessa versão podem ser encontradas neste link.
Novos recursos
- setDefaultNightMode() agora recria automaticamente todas as atividades iniciadas.
Correções de bugs
- Várias correções no modo DayNight.
- Invalidação de contorno em qualquer alteração em segundo plano na ActionBar.
- Correção da rolagem do widget do ícone de carregamento.
- Corrigidos planos de fundo de janela de conjunto personalizados que estavam sendo modificados no AlertDialog.
Versão 1.1.0-alpha04
3 de abril de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-alpha04
e androidx.appcompat:appcompat-resources:1.1.0-alpha04
. As confirmações incluídas nessa versão podem ser encontradas neste link.
Novos recursos
- Adicionadanova família
ThemeOverlay.AppCompat.DayNight
de temas. Esses temas serão usados com o recurso DayNight.
Mudanças na API
- AppCompatActivity agora contém um segundo construtor que usa um
@LayoutRes int
, que substitui o comportamento anterior de anotar sua classe AppCompatActivity com@ContentView
. Essa abordagem funciona nos módulos do app e da biblioteca (b/128352521).
Correções de bugs
- As dependências internas são fixadas em versões estáveis sempre que possível.
- A rolagem de
AppCompatSpinner
foi corrigida no modo suspenso (b/124274573). applyOverrideConfiguration()
só é chamado quando necessário para o DayNight.
Versão 1.1.0-alpha03
13 de março de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-alpha03
e androidx.appcompat:appcompat-resources:1.1.0-alpha03
. Essa é a primeira versão de appcompat-resources
.
A lista completa de confirmações incluídas nessa versão pode ser encontrada neste link (link em inglês).
Novos recursos
- A nova biblioteca appcompat-resources contém APIs que permitem que os apps carreguem e tonalizem drawables (inclusive drawables vetoriais) em versões anteriores da plataforma. Essa é a mesma funcionalidade que fazia parte anteriormente do módulo appcompat. No entanto, ela agora está disponível sem a sobrecarga do backport completo do Material Design, que inclui widgets, caixas de diálogo, modo noturno etc.
- Correções importantes no suporte ao modo DayNight.
- Nova opção
MODE_NIGHT_AUTO_BATTERY
para o modo DayNight. - Tonalização do Drawable em
AppCompatTextView
- O estouro da Toolbar agora pode ser estilizado com listas de estados de cores com temas.
- Agora, os ícones de menu podem usar cores que fazem referência a atributos de tema.
- O novo atributo app:menu pode ser definido em uma Toolbar para disponibilizar o conteúdo do menu no momento da inflação.
Correções de bugs
- Correção do modo de tonalidade padrão no ImageView, versão 21.
- Correção da dispensa incorreta do pop-up do ícone de carregamento ao girar o dispositivo.
- Corrigido DayNight, que não respeitava
configChanges
no manifesto. - Foi corrigido um problema em que a mudança para
MODE_NIGHT_FOLLOW_SYSTEM
não funcionava (b/111345020). - Corrigido WebView, que redefinia recursos do DayNight (b/37124582).
Versão 1.1.0-alpha02
7 de fevereiro de 2019
Lançamento de androidx.appcompat:appcompat 1.1.0-alpha02
.
Novos recursos
- Extração do processamento do drawable específico de recurso para um hook (aosp/870976).
- As Barras de Ferramentas
titleTextColor
esubtitleTextColor
receberam permissão para usar umColorStateList
, e foram adicionadas sobrecargasColorStateList
dos métodossetTitleTextColor
esetSubtitleTextColor
(osp/867489).
Correções de bugs
- Corrigida
fontFamily
que não funcionava em APIs de níveis anteriores a 24 (aosp/807054). - Corrigido bug em que
textFontWeight
não funcionava quando uma atividade se estendia deAppCompatActivity
(aosp/847640). - Correção do bug que fazia com que o texto do título no pop-up do widget para o ícone de carregamento (no modo de caixa de diálogo) não usasse a fonte especificada na
fontFamily
(aosp/789994). - Corrigido bug que impedia que os widgets
AppCompatCheckBox
eAppCompatRadioButton
alterassem a tonalidade do plano de fundo (aosp/825160). - Corrigido bug em que AppCompat não modificava
android: list styles
(aosp/862350).
Versão 1.1.0-alpha01
3 de dezembro de 2018
Novos recursos
AppCompatTextView agora oferece suporte a drawables compostos
app:drawableLeftCompat
,app:drawableTopCompat
,app:drawableRightCompat
,app:drawableBottomCompat
,app:drawableStartCompat
eapp:drawableEndCompat
, além de suporte a tipos drawable de versões anteriores, comoVectorDrawableCompat
.Os drawables padrão de
AppCompatCheckBox
eAppCompatRadioButton
agora animam as mudanças do estado de verificação.
Mudanças na API
- aosp/740385:
ActionBarOverlayLayout agora implementa NestedScrollingParent2 e
NestedScrollingParent3, facilitando a funcionalidade mais recente na
rolagem aninhada 3. Se o código do desenvolvedor atualmente modificar
ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int)
, ele provavelmente não será mais chamado eActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[])
precisará ser modificado.
Versão 1.0.2
Versão 1.0.2
7 de novembro de 2018
Versão de correção de bugs de core-1.0.1
e appcompat-1.0.2
.
Correções de bugs
- Correção do bug em que
PrecomputedTextCompat
falhava quando usado comAppCompatTextView
RTL b/113070424 (link em inglês)
Versão 1.0.0
Versão 1.0.0
7 de novembro de 2018
Novos recursos
- A classe
AnimatedStateListDrawableCompat
oferece transições animadas entre estados de drawable.