Android EditText Capital Characters

riz*_*z86 3 android capitalize android-edittext

我有一个edittext,我想要在大写字母中输入edittext中显示的任何字符.我用过这个:

edittext.setInputType(InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS);

但它没有用.我想动态地做.有任何想法吗.

Par*_*ani 12

你只需要尝试使用android:inputType属性.

根据您的要求,您可以包括 android:inputType="textCapCharacters"


Hir*_*ral 8

黑客的类型,试试这个:

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());
      }
    }
});     
Run Code Online (Sandbox Code Playgroud)

这应该工作(没有时间检查)尝试在afterTextChanged中将行放在onTextChanged中,如果这不起作用..