Android5.0Button字体大小写

本文深入探讨了Material Design主题中导致Android应用中英文按钮显示为大写的背景原因,并提供了通过设置`android:textAllCaps`属性为`false`来解决此问题的方法。文章还详细介绍了如何覆盖主题属性以实现个性化文本样式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 1,Material Design简介
 2,MaterialDesign主题Theme
 3,android:elevation的使用
 4,AndroidMaterialDesign动画之RippleDrawable
 5,AndroidMaterialDesign动画之CircularReveal
 6,AndroidMaterialDesign动画之Activity Transitions
 7,AndroidMaterialDesign动画之Curved Motion
 8,AndroidMaterialDesign动画之Animate View State Changes


Button中如果设置了英文字母,在eclipse视图中或者手机上都会显示成大写字母。

设置属性:android:textAllCaps="false"  就OK了。


capitals         大写字母   uppercase

lowercase    小写字母



追溯下原因:

首先是在Material Design的主题中是用来样式


 <style name="Theme.Material">
        <item name="colorForeground">@color/bright_foreground_material_dark</item>
        <item name="colorForegroundInverse">@color/bright_foreground_material_light</item>
        <item name="colorBackground">@color/background_material_dark</item>
        <item name="colorBackgroundCacheHint">@color/background_cache_hint_selector_material_dark</item>
        <item name="disabledAlpha">@dimen/disabled_alpha_material_dark</item>
        <item name="backgroundDimAmount">0.6</item>
.......
        <item name="
textAppearanceButton">@style/TextAppearance.Material.Widget.Button</item>




TextAppearance.Material.Widget.Button 指向了TextAppearance.Material.Button

 <style name="TextAppearance.Material.Widget.Button" parent="TextAppearance.Material.Button" />


TextAppearance.Material.Button中我们发现textAllCaps 被设置为了true,那就是自动转为大写了。

 <style name="TextAppearance.Material.Button">
        <item name="textSize">@dimen/text_size_button_material</item>
        <item name="fontFamily">@string/font_family_button_material</item>
        <item name="textAllCaps">true</item>
        <item name="textColor">?attr/textColorPrimary</item>
    </style>



所以解决方法:

1,在xml对应的控件中设置   android:textAllCaps="false"

2,覆盖主题中的属性

  <style name="AppTheme" parent="AppBaseTheme">
        <item name="android:textAllCaps">false</item>
    </style>










评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值