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, которые маскируют идентификаторы в обоих ваших случаях.
Попробуйте переосмыслить логику.
Вы можете сделать что-то вроде этого:
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;
}
Надеюсь это поможет.
Других решений пока нет …