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.
Mudanças importantes desde a versão 1.6.0
- Agora,
AppCompatDialog
define corretamenteLifecycleOwner
,SavedStateRegistryOwner
eOnBackPressedDispatcherOwner
na visualização de decoração da caixa de diálogo pelas APIsViewTree
, corrigindo problemas ao hospedar umComposeView
em umAppCompatDialog
. - A
AppCompatActivity
agora define oViewTreeOnBackPressedDispatcherOwner
para que seja possível extrair o agente da visualização - Melhoria significativa no desempenho de
SupportMenuInflater
. Locale.getDefault()
agora retorna a localidade do sistema após uma inicialização a frio.LinearLayoutCompat
agora preserva os parâmetros de layout de margem.
Atualizações de dependência
- O
AppCompat
agora depende da Activity 1.7.0. - O
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
1º 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.
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 para acessar localidades por app em contextos que não são de atividade (I58e753). Quatro novas APIs foram adicionadas a esse recurso:
LocaleManagerCompat.getApplicationLocales()
: para que os desenvolvedores tirem 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 vai respeitar as localidades por app.ConfigurationCompat.setLocales()
: para APIs acima, para definir a localidade da configuração.
Outras mudanças na API
setLineHeight(unit, lineHeight)
foi adicionado às classes de compatibilidadeTextView
(Ia9fa9).setLineHeight(unit, lineHeight)
foi adicionado às classes de compatibilidadeTextView
(Ib2ee1).setLineHeight(unit, lineHeight)
foi adicionado às classes de compatibilidadeTextView
(I15716).
Correções de bugs
- Agora,
AppCompatDialog
define corretamenteLifecycleOwner
,SavedStateRegistryOwner
eOnBackPressedDispatcherOwner
na visualização de decoração da caixa de diálogo pelas APIsViewTree
, corrigindo problemas ao hospedar umComposeView
em umAppCompatDialog
. OAppCompat
agora depende da Activity 1.7.0. (Ib28ab, b/261314581). - Melhoramos significativamente a performance 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).- A
Emoji2
não vai unir as instâncias doNumberKeyListener
, permitindo que a localidade seja configurada por textview.- 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 suporte às mudanças no tratamento de margens de janela no 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 recuo de
ActionBarOverlayLayout
que estava usando incorretamente os insets 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
- Adicionadas as seguintes novas regras de lint que sinalizarão usos incorretos de AppCompat nos cenários a seguir:
- 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.