3

私はDialogFragmentを持っています。このダイアログ フラグメントのボタンをタップすると、ダイアログ フラグメントの特定の編集テキストの上にポップアップ ウィンドウを表示する必要があります。これを行うには、次を使用して編集テキストの絶対座標を見つけます

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

を使用して、必要な場所にポップアップを表示します

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

ただし、これを行うと、ダイアログ フラグメントの背後にポップアップ ウィンドウが表示されます。ダイアログフラグメントの上にポップアップを表示する方法はありますか?

4

2 に答える 2

4

さて、私は自分の間違いを理解しました。popUp.showAtLocation の最初のパラメーターは、popUpView ではなく getView() にする必要があります。

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

これにより、dialogFragment の上にポップアップが描画されます

于 2014-08-12T10:55:18.887 に答える