Boa tarde!
Seguinte:
Atualizei o Android Studio para a versão 4.1
Diferente as outras atualizações, esta modificou muita coisa e uma delas são os Styles dos BOTÕES!
Não tem mais o arquivo style em values, o que tem agora é um package com dois arquivos chamados themes (mesmos nomes), mas em seus conteúdos o colorOnPrimary de um é white e do outro é black.
Segue abaixo:
white:
<resources xmlns:tools="http://schemas.android.com/tools"> <!-- Base application theme. --> <style name="Theme.CalculadoraW" parent="Theme.MaterialComponents.DayNight.DarkActionBar"> <!-- Primary brand color. --> <item name="colorPrimary">@color/purple_500</item> <item name="colorPrimaryVariant">@color/purple_700</item> <item name="colorOnPrimary">@color/white</item> <!-- Secondary brand color. --> <item name="colorSecondary">@color/teal_200</item> <item name="colorSecondaryVariant">@color/teal_700</item> <item name="colorOnSecondary">@color/black</item> <!-- Status bar color. --> <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item> <!-- Customize your theme here. --> </style> </resources>
black:
<resources xmlns:tools="http://schemas.android.com/tools"> <!-- Base application theme. --> <style name="Theme.CalculadoraW" parent="Theme.MaterialComponents.DayNight.DarkActionBar"> <!-- Primary brand color. --> <item name="colorPrimary">@color/purple_200</item> <item name="colorPrimaryVariant">@color/purple_700</item> <item name="colorOnPrimary">@color/black</item> <!-- Secondary brand color. --> <item name="colorSecondary">@color/teal_200</item> <item name="colorSecondaryVariant">@color/teal_200</item> <item name="colorOnSecondary">@color/black</item> <!-- Status bar color. --> <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item> <!-- Customize your theme here. --> </style> </resources>
Eu sempre usei o style style="@android:style/Widget.Button.Inset", nem ele nem os outros estão funcionando, ele sempre tem a mesma aparência, segue abaixo um print:
Modifiquei os themes, em <item name="colorPrimary">@color/purple_500</item> troquei o purple_500 pela cor cinza. Ele mudou apenas a cor. O que eu quero é que os botões fiquei com os efeitos do style, mas ele só mudou a cor.
Tanto no style style="@android:style/Widget.Button.Inset" como, por exemplo, style="@android:style/Widget.Button.Small" a aparência dos botões são as mesmas.
Se eu tirar as linhas style="@android:style/Widget.Button.Inset" a única coisa que acontece é a cor da String, de preta que fica branca, não sei se isso tem alguma coisa a ver com o “white” e o “black” dos themes. Enfim.
Um dos botões é esse:
<Button
android:id="@+id/quadrado"
style="@android:style/Widget.Button.Inset"
android:layout_width="70dp"
android:layout_height="70dp"
android:text="x²"
android:textSize="18sp"
app:layout_constraintBottom_toBottomOf="@+id/raiz"
app:layout_constraintStart_toEndOf="@+id/raiz"
app:layout_constraintTop_toTopOf="@+id/raiz"/>
Também tenho um botão que tem uma imagem e ela não está sendo exibida:
<Button
android:id="@+id/historico"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/historico"
android:clickable="false"
app:layout_constraintBottom_toBottomOf="@+id/fundo_historico"
app:layout_constraintEnd_toEndOf="@+id/fundo_historico"
app:layout_constraintStart_toStartOf="@+id/fundo_historico"
app:layout_constraintTop_toTopOf="@+id/fundo_historico"/>
Tudo funcionava bem antes da atualização, mas depois dessa a coisa tá desse jeito.
Alguém?
