Я полагаю, что вы можете использовать View.setOnCreateContextMenuListener , чтобы вручную связать свою деятельность в качестве поставщика контекстного меню для представления во время инициализации макета, а затем вызвать View.showContextMenu в представлении как только вы обнаружите долгое нажатие, чтобы вызвать меню. Он должен дозвониться до вашего onCreateContextMenu
вызова так же, как если бы вы зарегистрировали его обычным способом.
РЕДАКТИРОВАТЬ: Хорошо, это имеет тот же эффект переопределения слушателя события касания для представления. Учитывая это, единственное решение, которое я могу придумать, - это создать скрытый вид и зарегистрироваться, чтобы он был этим провайдером контекстного меню вида, а затем попросить его показать контекстное меню, как указано выше, когда долго касался реального / видимый вид виден.