我对 j2me 很陌生。我开发了一个基本的短信银行应用程序。我的应用程序适用于大多数触控和非触控设备的手机(Samsung duos、Monte、Nokia 6120c ...、Sony Ericson w300)。但是当我将它安装在三星 SGH-D980 中时,它可以正常安装并启动。但是加载启动画面后的第一个屏幕的列表元素对触摸没有响应。我使用 Net beans 7.0.1 开发了该应用程序,并使用了 CLDC 1.0 和 MIDP 2.0。我已经尝试过 defaultfxtouchphone 模拟器并且在它上面也可以正常工作。我的问题是为什么它可以在某些触摸手机上工作,但不能在上面提到的触摸手机上工作。谢谢你,
问问题
460 次
1 回答
1
任何其他手机上的 MIDlet 都可以使用触摸事件这一事实对您而言毫无意义。
MIDP 规范 ( JSR 118 ) 不强制实现使触摸(指针)事件可用于 MIDlet,即使对于触摸设备也是如此。根据club-java page 提供的数据,这正是 SGH-D980 的情况:
触摸屏或鼠标 (hasPointerEvents())否
触控笔运动事件 (HasPointerMotionEvents())否
只要设备允许以非触摸方式处理您的列表(您没有写任何说明不是这样的),就没有问题 - 您只需要忍受它。
当然,当 MIDlet 本身可用时,不会将触摸事件传递给 MIDlet,这意味着该设备上的 MIDP 实现很糟糕。但这是一个不同的故事
于 2011-11-16T08:07:49.357 回答