1

PopupWindow が表示されているときに、PopupWindow の領域外のボタンをクリックすると、PopupWindow が閉じられるだけで、ボタンのクリック リスナーは応答しません。私の質問は、ボタンのクリック リスナーが応答しないのはなぜですか?

private OnClickListener mSiftClickListener = new 
    View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if (mSiftPopwin != null && mSiftPopwin.isShowing()) {
                    ToastShow.makeText(mContext, "yes");  //never show
                } else {
                    showSfitPopwin();
                }
            }
    };

MyonClickListenerには2つの機能がshowSiftPopwinありToastShow、Popwinが表示されているときにもう一度クリックすると、Popwinは閉じますが、このonClickリスナーは呼び出されていません。

4

1 に答える 1

3

これは予期される動作です。

ポップアップ ウィンドウは、閉じられるまで、画面上のすべてのタッチ イベントを消費します。あなたが言及したタッチイベントはボタンに到達せず、クリックは実行されません。

ウィンドウが閉じられるたびに実行する場合は、ボタンのコードをOnDismissListenerに移動する必要があります。

于 2013-03-09T08:57:49.217 に答える