switch (v.getId() & event.getAction()) {
case R.id.report_stype & MotionEvent.ACTION_DOWN:
spinnertype();
break;
case R.id.report_sapprove & MotionEvent.ACTION_DOWN:
break;
}
どちらの場合も重複エラーが表示されます..修正方法は?
ビット単位で & 演算子を使用しますか?
これは実際に 2 つの異なる値を保証するものではありません。
たとえば、ACTION_DOWN には、両方のケースで ID をマスクする値 1 を持つビットが含まれる場合があります。
ロジックを再考してみてください。
次のようなことができます。
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;
}
お役に立てれば。