问题
Hello everyone my name is Taniguchi and i created a recyclerview and in this recyclerview i inserted a contextual action bar. And i want to insert a popup menu when i click in one of the items on the actio bar. I followed this but its not working.
Line:
View menuItemView = Activity.FindViewById<View>(Resource.Id.itemTwoId);
is showing the error : CS0120
and the Line :
PopupMenu popupMenu = new PopupMenu(this,menuItemView);
is showing the error : CS1503
My contextual action bar:
public class MyActionMode : Java.Lang.Object, ActionMode.ICallback
{
private RecyclerViewHolder holder;
private Context mContext;
private RecyclerView.Adapter mAdapter;
private int currentPosition;
private IMenu menu;
public MyActionMode(Context context) : this(context, null, 0)
{
}
public MyActionMode(Context context, RecyclerView.Adapter adapter, int position)
{
mContext = context;
mAdapter = adapter;
currentPosition = position;
}
public bool OnActionItemClicked(ActionMode mode, IMenuItem item)
{
switch (item.ItemId)
{
case Resource.Id.itemOneId:
View menuItemView = Activity.FindViewById<View>(Resource.Id.itemTwoId); // SAME ID AS MENU ID
PopupMenu popupMenu = new PopupMenu(this,menuItemView);
popupMenu.Inflate(Resource.Menu.popup_menu);
// And define click listener here.
popupMenu.Show();
return true;
case Resource.Id.itemTwoId:
// do Update
return true;
default:
return false;
}
}
public bool OnCreateActionMode(ActionMode mode, IMenu menu)
{
mode.MenuInflater.Inflate(Resource.Menu.ContextualMenu, menu);
return true;
}
public void OnDestroyActionMode(ActionMode mode)
{
mode.Dispose();
}
public bool OnPrepareActionMode(ActionMode mode, IMenu menu)
{
return false;
}
}
the error appears only OnActionItemClicked function.
来源:https://stackoverflow.com/questions/57398589/popup-menu-on-contextual-action-bar-its-not-working