我如何在android中编写自定义文本

时间:2013-03-29 07:52:25

标签: android internationalization arabic textinput

我正在尝试设计一个编写自定义文本的应用程序,其中的文本就像“محمد”,但我无法使用软键盘来写“char”。

我尝试使用以下代码处理edittext中的keyevent:

public boolean onKey(View view, int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_B || keyCode = KeyEvent.KEYCODE_5) {
        editText1.setText("ً");          
        return true;
    }
    return false;       
}

但是当我按下键5(或按键输入)时,文本工作正常(发生“”),当我按下键B时,文本不起作用,字符“B”进入文本框。< / p>

然后我尝试了textwacher在下面显示的方式,但最终遇到了同样的问题

editText1.addTextChangedListener(new TextWatcher() {

public void afterTextChanged(Editable s) {
    editText1.setOnKeyListener(new OnKeyListener() {    
        public boolean onKey(View v, int keyCode,KeyEvent event) {
        // If the event is a key-down event on the "enter" button
           if (keyCode == KeyEvent.KEYCODE_M) {
               editText1.setText("م");
               return true;
           }
        return false;
        }
    }
});

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

@Override
public void onTextChanged(CharSequence s, int start, int before, int count) { }

0 个答案:

没有答案