有没有办法干扰黑莓键盘输入和到达前台应用程序的键事件?即我们想要做的是构建一个预测键盘功能,用于需要键盘输入的任何应用程序(如文本框,电子邮件等),因此我们需要: 1)获取按下的键 2)在屏幕上呈现几个可能的预测 3.a)用户通过点击或选择预测的单词 3.b)继续写作
有没有办法在Blackberry上执行此操作?我知道我们可以听键盘,但我不确定我们是否可以在屏幕上显示某些内容而另一个应用程序在前台,以及如何告诉应用程序获取用户选择的预测字词。
提前致谢!
答案 0 :(得分:0)
我知道我们可以听键盘,
这是主要问题......您会看到,在后台应用程序中,您可以处理的唯一关键事件是Keypad.KEY_ESCAPE
:
StackOverflow.com - BlackBerry - KeyListener with global scope
BlackBerry Technical - Developer Forum - KeyListener in Background
BlackBerry Development:Java Development:KeyListener in Background App
但是我不确定我们是否可以在屏幕上显示某些内容,而另一个应用程序位于前台,
您可以使用建议单词列表显示全局对话框:
private void showMessage(String message) {
synchronized (Application.getEventLock()) {
Dialog dlg = new Dialog(Dialog.D_OK, message,
Dialog.OK, null, Manager.FIELD_HCENTER);
Ui.getUiEngine()
.pushGlobalScreen(dlg, 1, UiEngine.GLOBAL_QUEUE);
}
}
以及如何告诉应用程序获取用户选择的预测单词。
可以通过事件注射实现:BlackBerry - Simulate a KeyPress event