Midlet不会对旧款触摸屏手机的触控做出反应

时间:2011-11-15 06:19:56

标签: java-me midp touchscreen cldc samsung-mobile

我对j2me很新。我开发了一个基本的短信银行应用程序。我的应用程序适用于大多数触摸和非触摸设备(Samsung duos,Monte,Nokia 6120c ...,Sony Ericson w300)。但是当我在三星SGH-D980中安装它时,它安装并启动正常。但是我加载启动画面后第一个屏幕的列表元素没有响应触摸。我使用Net beans 7.0.1开发了应用程序,并使用了CLDC 1.0和MIDP 2.0。我已经尝试过defaultfxtouchphone模拟器并且也能正常工作。我的问题是为什么它适用于某些触控手机但不适用于上述触控手机。谢谢,

1 个答案:

答案 0 :(得分:1)

在任何其他手机上MIDlet都可以使用触摸事件这一事实对您而言毫无意义。

MIDP规范(JSR 118)不强制实现使MIDlet即使对于触摸设备也可以使用触摸(指针)事件。根据{{​​3}},SGH-D980就是这种情况:

  

触摸屏或鼠标(hasPointerEvents())
  触笔运动事件(HasPointerMotionEvents())

只要设备允许以非触摸方式处理您的列表(您没有写过任何说明不是这样),就没有问题 - 您只需要忍受它。

  当然,当本机可用时,不会将触摸事件传递给MIDlet意味着该设备上的MIDP实现很糟糕。但这是一个不同的故事