我尝试使用工作正常的代码,除非我点击recyclerview
的最后或最后一行,popupWindow
打开offscreen
。有没有办法为popupWindow
的结束行显示视图的upSide
recyclerview
。
这是我正在使用的代码:
public void showPopup(View v, int _pos) {
LayoutInflater layoutInflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View popupView = layoutInflater.inflate(R.layout.popup_row_appointment_option, null);
popupWindow = new PopupWindow(
popupView,
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
popupWindow.setBackgroundDrawable(new BitmapDrawable());
popupWindow.setFocusable(true);
popupWindow.setOutsideTouchable(true);
popupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
@Override
public void onDismiss() {
//TODO do sth here on dismiss
}
});
popupWindow.showAsDropDown(v, v.getScrollX(), v.getScrollY());
tv_view_profile = (TextView) popupView.findViewById(R.id.tv_view_profile);
tv_view_profile.setOnClickListener(this);
}
答案 0 :(得分:0)
我建议你去PopupMenu接受 AnchorView - >使用它我们可以获得我们想要显示弹出窗口的确切位置 - >你可以将AnchroView作为View(三点图像视图)传递
这是一个很好的例子:
https://www.javatpoint.com/android-popup-menu-example
还请使用Appcompat版本在菜单中触摸材料。
使用自定义布局,您可以使用常规流程进行微小更改 -
popup.showAtLocation(anchorView, Gravity.BOTTOM, 0,
anchorView.getBottom() - 60);
这只是底部引力的一个例子。您可以根据代码设置重力和余量。
anchorView =您要显示此弹出窗口的视图。试试这个,如果您有任何疑问,请告诉我。