android - 更改应用程序主题后,Material Components 主题对话框按钮变得浮肿

标签 android material-components-android

今天我正在尝试新的 Material 组件,他们安装的一部分是您需要更改应用程序的父级以继承自 Theme.MaterialComponents。 所以我这样做是因为我想使用波纹效果更好的底部导航。但在那之后,应用程序中的几乎所有按钮都变得更加蓬松。

我应该怎么做才能恢复到以前的状态(右图)?

On left is a material version on right is appcompat version 左边是material版本右边是appcompat版本

最佳答案

在研究过程中,我找到了答案,我会把它留在这里,也许它会对某人有所帮助。

它们看起来像这样的原因是因为它们使用了 style="attr/buttonBarNegativeButtonStyle" 并且 Material 主题覆盖了它们

要解决此问题,您需要使用 Bridge 主题而不是 Theme.MaterialComponents.Light

<style name="Theme.MyApp" parent="Theme.MaterialComponents.Light.Bridge">
    <!-- ... -->
</style>

更多在这里: https://github.com/material-components/material-components-android/blob/master/docs/getting-started.md#bridge-themes

关于android - 更改应用程序主题后,Material Components 主题对话框按钮变得浮肿,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52293029/

相关文章:

android - 如何为列表弹出窗口设置圆角背景?

Android WebView XMLHttpRequest Keepalive

android - Android API 21 上的 Material 切换按钮问题

android - 使用 Material Components 和 androidX 编译 Android 应用程序时出错

android - 更改 MaterialToolbar 菜单项图标颜色

android - Material 设计组件按钮全局主题覆盖 splinter

android - 如何动态更改操作栏操作?

android - 任务 ':app:transformClassesWithDexBuilderForDebug'的执行失败。 >无法在Android Studio中为文件创建MD5哈希(Flutter)

android - 双 SIM 卡手机的 getLine1Number() 返回什么?

android - 获取新数据后保持 ListView 的滚动位置