【发布时间】:2013-11-18 16:50:34
【问题描述】:
我仅在三星 Galaxy Fame 设备上使用 EditText 时遇到了一些问题。在截图中你会看到这两个错误:
editText bug http://ubuntuone.com/1vcvZkZevshNLvl4DvBNJ5
Bug №1:在清单中禁用 RTL,重力没有设置为“右”,但是当您添加新符号时,它们被放置在 EditText 的右侧。
Bug №2:最后一个字符应该是“0”,而不是倒置的“?”问号符号。 P.S:我使用的是标准字体。
更新: 所有输入都是通过自定义键盘布局进行的,所以我用下一行模拟按键:
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;
}
【问题讨论】:
标签: android android-edittext samsung-mobile right-to-left