TextWacher()在android中编写unicode(Sindhi)的问题

时间:2013-09-28 09:06:48

标签: android

我想以这种方式在unicode中写EditText个字符:

final EditText et = (EditText) findViewById(R.id.editText1);
    TextWatcher tw = new TextWatcher() {
        public void afterTextChanged(Editable s){

        }
        public void  beforeTextChanged(CharSequence s, int start, int count, int after){

        }
        public void  onTextChanged (CharSequence s, int start, int before,int count) {
            if(s.equals("a")){
                et.append("\u0627");
            }
        } 
    };

    et.addTextChangedListener(tw);

但这只会在chracter中写出英文EditText,如何解决这个问题。 在此先感谢。

1 个答案:

答案 0 :(得分:1)

尝试这种方式可以帮助你

EditText edt = (EditText) findViewById(R.id.edt);


        InputFilter filter = new InputFilter() {

            @Override
            public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
                if(source.toString().equals("a")){
                    return "\u0627";
                }

                return null;

            }
        };

        edt.setFilters(new InputFilter[]{filter});

<强>输出

enter image description here