Android Studio'da küçük harfli düğme metni kullanılamıyor


185

Bir süredir beni rahatsız eden önemsiz bir sorum var. Ben bu google denedim ama kimse benimle aynı sorunu var gibi görünüyor ya da bir sorun olarak görmüyor. Düzen altında etkinlik_my.xml'de bir düğme yaptığımda

 <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" />

Benzeyen bir düğme alıyorum Bu] [Imgur

benim dizeleri kodu olsa bile:

<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>

Burada kesinlikle küçük bir şey eksik olduğumu biliyorum, ancak düğme metninde küçük harf / büyük harf nasıl çalışırım?

Teşekkürler!


Button_1_name dizesi için farklı değerler klasörünüzü kontrol edin.
Zeeshan Khan

@lpbug bir yıl sonra. hala aynı sorunla karşı karşıya
kaldım

Yanıtlar:


467

android:textAllCaps="false"Düğmeye ekleyebilirsiniz .

Düğme metni, uygulamanızın tüm düğmelere uygulanan temasıyla büyük harfe dönüştürülebilir. Özelliği ayarlamak için tema / stil dosyalarına bakın android:textAllCaps.


1
Yanıtınız için teşekkürler! android:textAllCaps="false"geçici bir çözüm olarak çalıştı, ancak eklenen yeni düğmelerin tümü büyük harfle yazılmıştır. Res / değerleri altındaki styles.xml'm yukarıda belirtilen özniteliğe sahip görünmüyor. İşte vardı<resources> <!-- Base application theme. --> <style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar"> <!-- Customize your theme here. --> </style> </resources>
Alex H

15
Bu Theme.Holo.Light.DarkActionBarayarı içeren temayı devralıyorsunuz . Stil düğmeleri için yeni açık özellik eklemeniz gerekiyor, örn.<style name="Widget.Button" parent="Widget.Button"><item name="android:textAllCaps">false</item></style>
Stelian Matei

1
Bunu ekledikten sonra, arrayindexoutofboundsexception ile enflasyon hatası yaşıyorum.
M. Usman Khan

@usman İstisna textAllCapsmülk ile ilgili olduğundan şüpheliyim . Daha fazla ayrıntı verebilir misiniz?
Stelian Matei

1
Button sınıfını genişleten kendi özel sınıfınızı kullandığınızda bu çalışmayacaktır.
Er. Joshi

28
<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>

Basit ve etkili.
Valandres

8

Bu, düğmenin TransformationMethod null değeri ayarlanarak uygulama kodunda düzeltilebilir, örn.

mButton.setTransformationMethod(null);


4

Bunu yapmanın 3 yolu vardır.

1. Tüm uygulamayı değiştirmek için style.xml dosyasına aşağıdaki satırı ekleyin

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

2.Use

android:textAllCaps="false"

senin layout-v21

mButton.setTransformationMethod(null);
  1. bu satırı öğenin altına (düğme veya metni düzenle) xml biçiminde ekle

android: textAllCaps = "false"

Saygılarımızla




1

TextView'de bu sorunla karşılaştım. denedim

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

bunların hiçbiri benim için işe yaramadı. Sonunda bıktım ve sabit kodlu metin var, çalışıyor.

tv.setText("Mytext");

tv TextView nesnesidir. Ancak kodlama standartlarına göre, bu kötü bir uygulamadır.



0

XML Kodunda
bu satırı android:textAllCaps="false" feryat kodu gibi ekleyin

 <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" ** />

veya

Java kodunda ( programlı olarak )
bu satırı düğmenize ekleyinsetAllCaps(false)

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

0

Bir özellik vardır <Button>ki android: textAllCaps = "false" Kendi Küçük ve büyük harflerle istediğiniz karakterleri yapmak. Varsayılan olarak, bu gerçek oldu bu yüzden bu kodu yazın ve textAllCaps = false olun sonra o zaman küçük ve Caps harf gereksinimine göre düğme metni yazabilirsiniz. İhtiyaçlarımıza göre harf yazmaya izin veren bir Düğme için tam kod.

 <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/btnLogin"
            android:text="Login for Chat"
            android:textAllCaps="false"/>
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.