我正在使用j2me和LWUIT(黑莓端口)开发黑莓应用程序。除了TextField在数字模式下,一切都很好。基本上当你专注于TextField时,你必须首先进入“NUMERIC”模式(通过按alt + aA)才能输入,这不是用户友好和问题。
建议的解决方案是使用TextArea,它允许您打开NATIVE类型的输入框。问题是用户需要关注该字段,然后按下再次不友好的开火按钮。
有谁知道任何简单的解决方案?
我想到的几个解决方案(但不知道如何做到): 1)捕获TextArea上的任何按键并进入NATIVE模式,而不仅仅是火键。 2)使用整个表单的代码将黑莓输入模式放入数字。
任何建议都将受到赞赏。
非常感谢,
保
答案 0 :(得分:1)
我不确定这个解决方案是否能够满足您的需求,但您可以添加j2me onKeyPress处理,将字母按键“转换”为与同一个键对应的数字并添加“正确” “编号到文本字段而不是用户实际按下的内容。请记住,这样的解决方案需要您担心可移植性问题,并非所有黑莓模型都使用相同的键盘布局(例如qwerty与减少qwerty)并充分处理布局的变化。
答案 1 :(得分:1)
好的回答我自己的问题。
我在TextArea上覆盖了keyRelease方法。并且在此方法中,如果按键不是箭头键,则调用editString方法(这会导致本机文本字段打开)。唯一的缺点是它总是会错过文本框中的第一个按键。