将命令分配给javaMe中的*软按钮

问题描述:

我有使用诺基亚手机的移动javaMe应用程序。但是,现在我将它移植到三星5611上,我遇到了这样一个问题:在*软按钮上没有指定命令,所有这些都包含在右键菜单中。当在诺基亚3110c上启动相同的midlet时,其中一个命令被放置在*按钮上,其他的(如果> = 2)被分组到选项菜单中。 我试过Item.setDefaultCommand(无效果)和Display.getInstance()。setThirdSoftButton(true)(这种方法在SDK 3.4中不支持)。此外,我试图改变一个命令的类型,以确定或屏幕,并改变优先级,一切都没有成功。将命令分配给javaMe中的*软按钮

在此先感谢。任何想法都会有所帮助。

不幸的是,开发人员无法准确判断这些命令属于哪个软按钮。这是决定的个别设备。有些设备有两个软键,有些则有三个。 你可以用优先级来摆弄一下,但是你仍然不能强制命令到特定的软键。 这是您的高级GUI(表单)。

如果你想控制这些东西,你需要使用低级别的GUI(Canvas/GameCanvas)。现在有几个API可以用来创建类似Form的低级GUI。例如,查看LWUIT,我想这可以让您轻松地将高级代码移植到低级别。

但即使使用低级编码,您也必须注意不同的设备具有软键的不同键码。

+0

非常感谢Lou先生的快速回复。我不想告诉设备什么按钮分配。但是,似乎我的应用程序中的某些内容禁止设备使用*按钮。另一方面,我发现有时设备使用*按钮(例如,在浏览其菜单时)。我读过http://*.com/questions/13227577/central-button-soft-key-lwuit,但我现在看到它需要LWUIT – Spectorsky