Android 如何设置弹出菜单的位置?
我使用的是弹出菜单,我必须确定我点击的按钮下面的弹出菜单的位置,但是上面我的按钮下面显示的是我所做的代码Android 如何设置弹出菜单的位置?,android,Android,我使用的是弹出菜单,我必须确定我点击的按钮下面的弹出菜单的位置,但是上面我的按钮下面显示的是我所做的代码 private final static int ONE = 1; private final static int TWO = 2; private final static int THREE = 3; PopupMenu popupMenu = new PopupMenu(context, convertView.findViewById(R.id.txtOverflowIconLi
private final static int ONE = 1;
private final static int TWO = 2;
private final static int THREE = 3;
PopupMenu popupMenu = new PopupMenu(context, convertView.findViewById(R.id.txtOverflowIconList_item_Egov));
popupMenu.getMenu().add(Menu.NONE, ONE, Menu.NONE, "Item 1");
popupMenu.getMenu().add(Menu.NONE, TWO, Menu.NONE, "Item 2");
// popupMenu.getMenu().add(Menu.NONE, THREE, Menu.NONE, "Item 3");
popupMenu.setOnMenuItemClickListener(new OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
switch (item.getItemId()) {
case ONE:
Toast.makeText(context, "first ", 100).show();
break;
case TWO:
Toast.makeText(context, "Two ", 100).show();
break;
}
return false;
}
});
holder.txtOverflowIcon.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
popupMenu.show();
}
});
下面是我得到的输出:
请帮帮我。弹出式菜单始终固定在视图(按钮)上,并始终显示在其所连接视图的上方或下方,具体取决于可用空间
如果您想根据需要定位菜单,最好使用对话框或弹出窗口。我可以解决这个问题。
PopupMenu
将显示类似于ActionBar
中的内容:而不是PopupMenu.show()代码>您需要这样做
popupMenu.show();
if (popupMenu.getDragToOpenListener() instanceof ListPopupWindow.ForwardingListener) {
ListPopupWindow.ForwardingListener listener = (ListPopupWindow.ForwardingListener) popupMenu
.getDragToOpenListener();
listener.getPopup().setHorizontalOffset(x);
listener.getPopup().setVerticalOffset(y);
listener.getPopup().show();
}
计算要显示弹出窗口以设置水平偏移(x)和垂直偏移(y)的锚定视图或按钮的位置。弹出菜单是否为警报对话框?