不能在android studio中小写按钮文本

时间:2014-07-22 06:33:48

标签: android button android-studio

我有一个琐碎的问题一直困扰着我。我试图谷歌这个,但似乎没有人像我一样有问题,或者没有把它视为一个问题。当我在布局

下的activity_my.xml中创建一个按钮时
 <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/button_1_name"
    android:id="@+id/button2"
    android:layout_marginTop="140dp"
    android:layout_below="@+id/textView"
    android:layout_centerHorizontal="true" />

我得到一个看起来像的按钮 this][Imgur

即使我的字符串代码是:

<resources>

<string name="app_name">HelloWorld</string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
<string name="button_1_name">BuTtOn 1</string>

我知道我肯定在这里缺少一些小东西,但是如何在按钮文本中使用小写/大写字母?

谢谢!

11 个答案:

答案 0 :(得分:394)

您可以在按钮上添加android:textAllCaps="false"

按钮文字可能会被适用于所有按钮的应用主题转换为大写。检查主题/样式文件以设置属性android:textAllCaps

答案 1 :(得分:23)

<style name="AppTheme" parent="AppBaseTheme">
    <item name="android:buttonStyle">@style/Button</item>
</style>

<style name="Button" parent="Widget.AppCompat.Button">
    <item name="android:textAllCaps">false</item>
</style>

答案 2 :(得分:7)

通过将按钮的TransformationMethod设置为null,可以在应用程序代码中修复此问题,例如

mButton.setTransformationMethod(null);

答案 3 :(得分:6)

在xml按钮中添加#!/usr/bin/env perl use strict; use warnings; use 5.010; my @list = <>; chomp @list; for my $line (@list) { my @id = split(/\s+/, $line); open my $outfile, '>', "tmp/$id[0].diso" or die "Failed to open output file: $!"; for my $j ($id[1] .. $#id) { my ($n1, $n2) = split(/-/, $id[$j]); for my $k ($n1 .. $n2) { say $outfile $k; } } } 这个问题确实如此。

答案 4 :(得分:3)

有3种方法可以做到这一点。

1.在style.xml上添加以下行以更改整个应用程序

<item name="android:textAllCaps">false</item>

2.使用

android:textAllCaps="false"

layout-v21

mButton.setTransformationMethod(null);
  1. 在xml
  2. 中的元素(按钮或编辑文本)下添加此行
      

    机器人:textAllCaps = “假”

    问候

答案 5 :(得分:3)

在Button中的.xml文件中添加此行 -

android:textAllCaps="false"

答案 6 :(得分:0)

你可以像这样设置

button.setAllCaps(false);

编程

答案 7 :(得分:0)

XML中的

: 机器人:textAllCaps =&#34;假&#34;

编程:

mbutton.setAllCaps(假);

答案 8 :(得分:0)

使用XML代码
添加此行android:textAllCaps="false" 像下面的代码

 <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/button_1_name"
        android:id="@+id/button2"
        android:layout_marginTop="140dp"
        android:layout_below="@+id/textView"
        android:layout_centerHorizontal="true"
       ** android:textAllCaps="false" ** />

以Java代码(以编程方式
将此行添加到您的按钮setAllCaps(false)

Button btn = (Button) findViewById(R.id.button2);
btn.setAllCaps(false);

答案 9 :(得分:0)

all_possible_combinaisons = [ initial_tasks_groups, [ [{task: 'Cut Tree', score: 25}, {task: 'Clean House', score: 10}], [{task: 'Walk Dog', score: 10}, {task: 'Wash Floor', score: 10}, {task: 'Call Uncle Ben', score: 15}], [{task: 'Wash Giraffe', score: 15}, {task: 'Burn House', score: 19}] ], [ [{task: 'Cut Tree', score: 25}, {task: 'Clean House', score: 10}], [{task: 'Walk Dog', score: 10}, {task: 'Wash Floor', score: 10}, {task: 'Wash Giraffe', score: 15}], [{task: 'Call Uncle Ben', score: 15}, {task: 'Burn House', score: 19}] ], ... ] 中有一个属性,即 android:textAllCaps =“ false” ,可以在您自己的Small和Caps中创建所需的字符。默认情况下,它变为 True ,因此编写此代码并设置 textAllCaps = false ,然后您可以根据需要在按钮上以小写字母和大写字母书写。 按钮的完整代码,可用于根据我们的要求写字母。

<Button>

答案 10 :(得分:0)

我在TextView中遇到了这个问题。我尝试过

android:textAllCaps="false", 
mbutton.setAllCaps(false);   
<item name="android:textAllCaps">false</item> 

没有一个对我有用。最后,我受够了,并且得到了硬编码的文本,它正在工作。

tv.setText("Mytext");

电视是TextView的对象。但是按照编码标准,这是不好的做法。