Button英文字符自动大写的问题

原创 2016年05月31日 00:56:31

问题

如题

原因分析

以我项目中使用Theme.AppCompat.Light.DarkActionBar主题为例。跟踪源码可发现,该主题中有:

<style name="Base.TextAppearance.AppCompat.Button">
        <item name="android:textSize">@dimen/abc_text_size_button_material</item>
        <item name="textAllCaps">true</item>
        <item name="android:textColor">?android:textColorPrimary</item>
    </style>

关键的原因在于:
<item name="textAllCaps">true</item>
当然,如果细看的话,会发现不止是Button这一控件的该属性被设置成了true。

解决方法

由上面的原因分析便可简单的找到解决方法,这里简单提及两种方式:

  1. 修改style.xml如:
 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>

        <item name="textAllCaps">false</item>
    </style>

将textAllCaps属性设置为false。如此,整个项目中的相关控件的(字符)文本都可避免被自动转换为大写。
2. 在具体控件中重置该属性为false,如:

<Button
    android:id="@+id/btn_answer1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:textAllCaps="false"
    />

这方法唯一不足的是需要对每个相关控件都设置该属性。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

HelloChart--ColumnChartView(柱形图)

在XML中的定义: 控件实

手把手教你实现折线图之------安卓最好用的图表库hellocharts之最详细的使用介绍

http://blog.csdn.net/u012534831/article/details/51505683

HelloChart折线图动态刷新--模拟心电图效果

通过HelloCharts绘制折线图,利用定时器完成动态刷新,模拟实现心电图效果

hellocharts的简单用法

链接:http://blog.csdn.net/u012534831/article/details/51505683 首先libs添加(Eclipse中): hellocharts-librar...

Android HelloChart开源库图表(二)之饼图

Android hellochart 之 饼图
  • wwdlss
  • wwdlss
  • 2015-11-23 17:56
  • 3685

HelloCharts(一、LineChart)

HelloCharts控件里的LineChart方法设置 布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/re...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)