switch (v.getId() & event.getAction()) {
case R.id.report_stype & MotionEvent.ACTION_DOWN:
spinnertype();
break;
case R.id.report_sapprove & MotionEvent.ACTION_DOWN:
break;
}
两种情况都显示重复错误..如何解决?
最佳答案
您确定要按位并使用 & 运算符吗?
这实际上并不能保证两个不同的值。
例如,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;
}
希望这对您有所帮助。
关于android - 使用 and(&) 运算符在 switch case 期间出现重复大小写错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19721819/