switch (v.getId() & event.getAction()) {
case R.id.report_stype & MotionEvent.ACTION_DOWN:
spinnertype();
break;
case R.id.report_sapprove & MotionEvent.ACTION_DOWN:
break;
}
两个案例都显示重复错误......要修复的方法吗?
答案 0 :(得分:1)
你确定要按位并使用&操作
实际上并不能保证两个不同的值。
例如,ACTION_DOWN可能具有值为1的位,这两个位掩盖了两种情况下的ID。
尝试重新思考逻辑。
您可以这样做:
switch (v.getId() ) {
case R.id.report_stype:
if( event.getAction() == MotionEvent.ACTION_DOWN)
spinnertype();
break;
case R.id.report_sapprove:
if( & event.getAction() == MotionEvent.ACTION_DOWN)
// do whatever
break;
}
希望这会有所帮助。