怎么屏蔽数字0键的长按事件
如何屏蔽数字0键的长按事件
手机按键的动作都是在framework里处理好的。其中数字键0的动作短按时为0,长按时就是+,这个在打国际长途电话时很有用。但是在计算器中,只需要单纯的数字0,不让它出现长按时变为+。不想修改framework里的代码,这样又要相应修改phone,弄得复杂了。
各位大侠怎么处理啊,等待中、、、
手机按键的动作都是在framework里处理好的。其中数字键0的动作短按时为0,长按时就是+,这个在打国际长途电话时很有用。但是在计算器中,只需要单纯的数字0,不让它出现长按时变为+。不想修改framework里的代码,这样又要相应修改phone,弄得复杂了。
各位大侠怎么处理啊,等待中、、、
1 楼
oyeal
2011-03-16
没人回复,自己解决了。
重写长按事件功能:
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
// TODO Auto-generated method stub
//只针对数字0键
if(event.getKeyCode() == event.KEYCODE_0){
//长按0键不对其进行处理
if(event.getRepeatCount()>0){
return true; //记住返回真
}
}
return super.dispatchKeyEvent(event);
}
重写长按事件功能:
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
// TODO Auto-generated method stub
//只针对数字0键
if(event.getKeyCode() == event.KEYCODE_0){
//长按0键不对其进行处理
if(event.getRepeatCount()>0){
return true; //记住返回真
}
}
return super.dispatchKeyEvent(event);
}
2 楼
oyeal
2011-03-16
再次注明:
return super.dispatchKeyEvent(event);//表示由系统处理
return super.dispatchKeyEvent(event);//表示由系统处理