Я хочу использовать контекстное меню, когда пользователь нажимает на представление внутри адаптера.
Надеюсь, что нет.Вы можете использовать контекстное меню, когда пользователь долго нажимает на элемент в AdapterView
. Вот пример проекта , демонстрирующий это.
Все остальное (например, всплывающее сообщение «когда пользователь нажимает на представление внутри адаптера») должно быть AlertDialog
, как предлагаетсяby @ coder_For_Life22.
Итак, когда я пытаюсь создать контекстное меню или зарегистрироваться в registerForContextMenu внутри этого класса, который расширяет только BaseAdapter, это невозможно.
Вы звоните registerForContextMenu()
только один раз, для AdapterView
.Вы делаете это из onCreate()
упражнения, после того как вы позвонили setContentView()
и, следовательно, создали AdapterView
.
Все остальное должно быть AlertDialog
.
Можно ли дать этому классу параметры, которые позволяют ему запускать контекстное меню?
Вам не нужно «давать этому классу параметры, которые позволяют ему запускать контекстное меню»,потому что вы звоните registerForContextMenu()
только один раз, для AdapterView
.
Все остальное должно быть AlertDialog
.Вы можете добавить конструктор в Adapter
, который принимает Activity
в качестве параметра, который ваш Adapter
хранит и использует для AlertDialog
.Или, если Adapter
является внутренним классом Activity
, просто используйте MyActivityName.this
для ссылки на Activity
.