Android EditText Capital Characters

一卷旌收千骑虏,万全身出百重围。这篇文章主要讲述Android EditText Capital Characters相关的知识,希望能为你提供帮助。
我有一个edittext,我想要在大写字母中输入edittext中显示的任何字符。我用过这个:

edittext.setInputType(InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS);
但它没有用。我想动态地做。有任何想法吗。
答案黑客的类型,试试这个:
edittext.addTextChangedListener(new TextWatcher() {@Override public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {} @Override public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { } @Override public void afterTextChanged(Editable arg0) { String s=arg0.toString(); if(!s.equals(s.toUpperCase())) { s=s.toUpperCase(); edittext.setText(s); edittext.setSelection(s.length()); } } });

这应该工作(没有时间检查)尝试在afterTextChanged中将行放在onTextChanged中,如果这不起作用..
另一答案你只需要尝试使用android:inputType属性。
根据您的要求,您可以加入android:inputType="textCapCharacters"
另一答案在你的editText中尝试这个android:capitalize =“characters”
另一答案
< EditText android:id="@+id/editText" android:layout_width="fill_parent" android:layout_height="30dp" android:capitalize="characters"/>

另一答案为了动态地做:
edittext.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS);

另一答案
EditText txt = FindViewById< EditText> (Resource.Id.textView1); txt.SetFilters(new Android.Text.IInputFilter[] { new Android.Text.InputFilterAllCaps() });

另一答案如果没有别的办法,你也可以试试这个
String text=editText.getText().toString(); editText.setText(text.toUpperCase());

【Android EditText Capital Characters】将此代码添加到EditText的onTextChangeListener中

    推荐阅读