我正在9900上开发一个应用程序,其中轨迹球和触摸屏都可用。
在我的应用程序中,我有一个包含两个按钮的屏幕,奇怪的行为是:
如果我使用轨迹球 设置焦点 第二个按钮,然后我触摸屏幕中的任何空位置,第二个按钮的更改侦听器被触发? 如果用户错误地点击空白区域并且没有触及第二个按钮,我希望什么都不会发生,该怎么做?
答案 0 :(得分:0)
我解决了它,对于那些感兴趣的人,你可以在你的Image按钮类中使用这段代码:
private boolean isTouchOutside;
protected boolean touchEvent(TouchEvent message) {
isTouchOutside = message.getX(1) < 0 || message.getX(1) > getWidth() || message.getY(1) < 0 || message.getY(1) > getHeight();
return super.touchEvent(message);
}
protected boolean navigationClick(int status, int time) {
if(! isTouchOutside)
fieldChangeNotify(0);
return true;
}