Я обнаружил, что причина в том, что я использую библиотеку Android-Iconics - я удалил инъекцию контекста, и теперь все в порядке.
Я использую комбинацию XML Layouts и Anko DSL для создания своего приложения, и я заметил, что дизайн кнопки отличается в зависимости от того, как она генерируется.
В случае, если это сгенерированная Anko кнопка, текст написан заглавными буквами (что, я думаю, должно быть в материале) и имеет волновой эффект. Если кнопка создана с помощью XML, текст в нижнем регистре и без эффекта.
Верхняя кнопка - это кнопка XML, поэтому здесь вы можете увидеть разницу.
Я пытался установить пользовательский стиль для кнопки, но, похоже, он не работает - я даже не могу заставить textAllCaps = true работать.
В настоящее время я использую androidx и расширяю AppCompat & Theme.AppCompat.Light.NoActionBar , и я попытался расширить Widget.AppCompat.Button , чтобы установить собственный стиль для смотреть без везения.
Это происходит на всех уровнях API (24, 26 и 28). В предварительном просмотре XML это показывает хорошо.
Текущий XML -
<Button
android:text="@string/compartir"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/debunkShareButton"
android:textAllCaps="true"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
app:layout_constraintTop_toBottomOf="@+id/debunkTitle"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
style="@style/Full_Yellow_Button"/>
А Full_Yellow_Button равно
<style name="Full_Yellow_Button" parent="Widget.AppCompat.Button">
<item name="android:background">@drawable/yellow_gradient</item>
</style>
Есть идеи? Спасибо!