Samsung Galaxy Fame上的EditText表示错误

时间:2013-11-18 16:50:35

标签: android android-edittext samsung-mobile right-to-left

我只在Samsung Galaxy Fame设备上遇到EditText的一些问题。在屏幕截图中,您将看到这两个错误:

editText bug http://ubuntuone.com/1vcvZkZevshNLvl4DvBNJ5

错误№1:清单中的RTL被禁用,重力未被设置为“正确”,但是当您添加新符号时,它们被放置在EditText的右侧。

错误№2:最后一个字符应为“0”,而不是反转“?”问号符号。 P.S:我正在使用标准字体。

UPD 的: 所有输入都是通过自定义键盘布局,所以我用下一行模拟按键:

long eventTime = System.currentTimeMillis();
KeyEvent keyEventDown = new KeyEvent(eventTime, eventTime, KeyEvent.ACTION_DOWN, 
    keyCode, 0, 0, 0, 0,
    KeyEvent.FLAG_SOFT_KEYBOARD | KeyEvent.FLAG_KEEP_TOUCH_MODE);
targetActivity.dispatchKeyEvent(keyEventDown);

Upd2 :问题出在dispatchKeyEvent方法中:

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
    if(event.getKeyCode() == KeyEvent.KEYCODE_0){
       //I can add "0" to editText here, but this is only backup plan. 
       return true;
    }
    super.dispatchKeyEvent(event);
    return true;
}

1 个答案:

答案 0 :(得分:0)

我找到了解决这个问题的方法。解决方案非常简单,我希望它也能为其他人提供帮助。

editText.setInputType(InputType.TYPE_CLASS_PHONE);