我正在为基于MIDP的应用添加一些功能,这需要我跟踪Item
是否具有焦点。我只关心字段式项目,需要确定用户何时完成将数据输入项目。
我知道CustomItem有traverse()
回调,但我找不到像DateField
,TextField
和ChoiceGroup
这样的类似的任何内容。
我也知道Display.setCurrentItem()
但是由于一些奇怪的原因,似乎没有Display.getCurrentItem()
方法。
将所有控件实现为CustomItems实际上并不是一个选项,因为它是一个预先存在的应用程序,并且有很多控件需要处理。我不敢相信之前没有人遇到过这个问题,但我在这里搜索并谷歌无济于事。希望我在API中遗漏了一些明显的东西,但如果没有明确的答案,那么欢迎创意解决方案!
答案 0 :(得分:0)
在MIDP 2 lcdui API中,唯一的字段样式项是Item
的交互式子类:TextField,DateField,Gauge。
对于上述项目,最接近您所询问的内容似乎由ItemStateListener
提供(如果您有兴趣,请查看API javadocs here。)
...由需要接收指示交互项内部状态变化的事件的应用程序使用...对于具有输入焦点概念的实现,应该在不晚于焦点时调用侦听器离开状态已经改变的项目。