我正在尝试构建一个基于上下文敏感的命令列表。我为所有命令按钮设置了command.ITEM选项。但我找不到如何提供以下功能的方法:
我有一个值列表,如A,B,C 对于A,我的命令菜单应包含2,4 当我将选择(光标)移动到B时,我的命令菜单应该有1,3 当我移动到C时,命令应该是2,1 当我回到A时,它应该有A的命令菜单(2,4)
它可用于文件和目录列表:
选择文件后,我想显示打开,编辑和删除选项(命令)。当我选择一个目录时,我想显示刚刚打开和删除的命令。
提前感谢任何指向正确方向的帮助。
答案 0 :(得分:1)
javax.microedition.lcdui.Form
类的规范(我假设你正在使用的)说明:
“这些遍历和滚动操作不会导致应用程序可见事件”
在显示命令菜单之前,也没有调用任何方法。
所有这些意味着您无法使用表单在此处执行所需操作。
根据您所定位的特定手机上的J2ME实施情况,javax.microedition.lcdui.CustomItem.getInteractionModes()
可能会告诉您是否可以在表单中使用单个CustomItem来创建上下文相关菜单。
在所有手机上执行此操作的唯一可靠方法是使用javax.microedition.lcdui.Canvas
并通过自己绘制来重新实现所需的控件。然后,您可以跟踪哪一个被“选中”并填充您自己的命令菜单,然后再显示它以响应低级keyPressed()
事件。
您可能需要查看LWUIT
开源库以获取中间解决方案。