События касания ActionMode передаются на панель инструментов

В своей деятельности я использую Toolbar (из appcompat) с помощью spinner вместо заголовка (определенного в xml). Активность не является ActionBarActivity поэтому я не использую ее как supportActionBar

Когда происходит выбор, я запускаю actionMode , который имеет actionMode над панелью инструментов.

Однако нажатие на название actionMode открывает раскрывающееся меню основного Spinner. Как я могу «поймать» события касания на заголовке actionMode, чтобы остановить их на панели инструментов?

Одним из простых решений было бы поставить yourspinner.setClickable(false); При открытии actionMode и yourspinner.setClickable(true); Когда он закрыт.

РЕДАКТИРОВАТЬ

Вы также можете попытаться переопределить метод actionMode onActionItemClicked чтобы вернуть true

https://developer.android.com/reference/android/support/v7/view/ActionMode.Callback.html#onActionItemClicked(android.support.v7.view.ActionMode , android.view.MenuItem)

Вы можете попробовать перегрузить onTouchEvent вашей панели инструментов. Если ваш actionMode имеет значение true, будет отправлено значение true, и цепочка touchEvent будет остановлена.

 mToolbar.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { return actionMode; } }); 

Я надеюсь, что это помогает.