gpt4 book ai didi

android - 如何自定义AppCompat Material按钮样式?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:42:57 25 4
gpt4 key购买 nike

我正在使用 AppCompat 主题,我想在我的按钮上设置 minHeight 属性:

<style name="Theme.MyTheme" parent="Theme.AppCompat">
<item name="android:buttonStyle">@style/MyButtonStyle</item>
</style>

<style name="MyButtonStyle" parent="...?">
<item name="android:minHeight">60dp</item>
</style>

但是,没有Widget.AppCompat.Button 样式可以设置为MyButtonStyle 的父级。如果我使用 android:Widget.Button,那么我所有的按钮看起来都像旧的蹩脚风格。我尝试了各种其他 AppCompat 主题,例如 TextAppearance.AppCompat.Button,但它们不起作用。

遗漏按钮样式的父主题也会导致按钮样式不正确。

如何自定义默认的 Theme.AppCompat buttonStyle

最佳答案

您可以在 API 14+ 上使用 Base.MyButtonStyle 扩展 android:Widget.Holo.Button(在 res/values-v14/styles.xml) 和 API 21+ 上的 android:Widget.Material.Button(在 res/values-v21/styles.xml 中。此样式会根据设备而变化系统版本。将您的平台特定修改放在这里。

然后让 MyButtonStyle 扩展 Base.MyButtonStyle 并在此处定义 android:minHeight(在 res/values/styles.xml 中)。这将适用于所有平台。

然后您的按钮可以使用样式MyButtonStyle

此示例假设您的最低 SDK 为 14。

是的,没有 appcompat-v7 按钮样式(好吧,至少现在还没有)。

编辑

这假设您可以在早于 Lollipop 的平台上使用 Holo 按钮。感觉不显眼,如果你能做到没有涟漪,应该没问题。如果你想要涟漪,我建议你用谷歌搜索第三方 Lollipop 按钮库。

关于android - 如何自定义AppCompat Material按钮样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28097182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com