Я пытаюсь получить View
из MenuItem
.MenuItemCompat.getActionView (menuItem) возвращает null
@Override
public boolean onOptionsItemSelected(MenuItem item) {
View miView = MenuItemCompat.getActionView(item);
if (miView == null) {
Log.e(X, "mView is null");
}
}
но каждый раз miView is null
.
Вот мой onCreateOptionsMenu
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, 0, 0, R.string.Foo);
return true;
}
Я знаю, что MenuItemCompat
возвращает нуль, поскольку созданный Menu
не из support
библиотеки, поэтому MenuItem
не может быть обработан MenuItemCompat
класса, не является?
1) Я ищу какой-либо метод, например onCreateOptionsMenuCompat
, есть ли какой-либо метод? 2) Как я могу получить ActionView от класса MenuItemCompat
?
И что я делаю неправильно?
PS: minSdkVersion моего проекта составляет 9
Я хочу создать 'ContextMenu' на' MenuItem', поэтому мне нужно 'View'. есть ли другой способ получить 'View' из' MenuItem'? – theapache64
Вы можете вручную показать контекстное меню, вызвав 'openContextMenu()' в своей деятельности. Вы можете вызвать этот метод в методе 'onOptionsItemSelected()'. Вам все равно необходимо реализовать другие обратные вызовы контекстного меню (например, 'onCreateContextMenu') – cstew