我有一个DialogFragment。在此对话框片段中点击按钮时,我需要在对话框片段中特定编辑文本上方显示一个弹出窗口。为此,我使用找到了edittext的绝对坐标

int[] coords = {0,0};
editText.getLocationOnScreen(coords);


并使用以下命令在所需位置显示弹出窗口

popup.showAtLocation(popupView, Gravity.NO_GRAVITY, coords[0] + edittext.getWidth(), coords[1]);


但是这样做会在对话框片段后面显示弹出窗口。有什么办法可以使对话框片段上方弹出?

最佳答案

好吧,我发现了我的错误。
popUp.showAtLocation的第一个参数应该是getView()而不是popUpView。

popup.showAtLocation(getView(), Gravity.NO_GRAVITY, coords[0] + edittext.getWidth(), coords[1]);


现在,这将在弹出对话框上方绘制弹出窗口

10-07 19:18
查看更多