Jason Robinson
Jason Robinson

Reputation: 31283

How to disable auto-capitalization of an EditText

This will have a really simple answer, but I can't seem to find what it is. I want to disable the auto-capitalization of an EditText so that, by default, the first letter entered with not be automatically capitalized. I still want to allow capitalization, but only if the user manually does so.

I've tried android:capitalize="none" on my EditText, and I've tried android:inputType="text" but both still auto-capitalize the first letter. I don't want to use a TextWatcher because on the soft keyboard it will still show the shift key as pressed for the first letter, and I'm nit-picky and don't want that to show.

Upvotes: 9

Views: 12366

Answers (3)

Kaitlyn Hanrahan
Kaitlyn Hanrahan

Reputation: 789

For posterity, I think what you're (or more accurately, whoever finds this in the future) looking for is this table of all the options that can be used for the inputType:
https://developer.android.com/reference/android/widget/TextView.html#attr_android:inputType

In this specific case, I would recommend "text".
Just plain old text. Corresponds to TYPE_CLASS_TEXT | TYPE_TEXT_VARIATION_NORMAL.

Upvotes: 0

Brian
Brian

Reputation: 8085

Have you tried android:inputType="textFilter"? That will disable all text filters, so there's no auto-correcting.

Upvotes: 3

A. Abiri
A. Abiri

Reputation: 10810

You could try using android:inputType="none" instead.

UPDATE:

You could also try using android:inputType="text|textEmailAddress"

Upvotes: 23

Related Questions