Как центрировать PopupWindow?

Я создал действие, в котором я добавляю кнопку, которая выдает всплывающее окно при нажатии. Вот код метода showPopup ():

    private void showPopup() {
    LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    View layout = inflater.inflate(R.layout.popup_layout, (ViewGroup) findViewById(R.id.popup_element), false);

    final PopupWindow pwindo = new PopupWindow(layout, LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT, true);

    Button btnAgree = (Button) layout.findViewById(R.id.ok);
    btnAgree.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            pwindo.dismiss();
        }
    });

    pwindo.showAtLocation(layout, Gravity.CENTER, 0, 0);
    }
}

Я бы центрировал его как вертикально, так и оризонтально. Я пробовал несколько способов, которые я вижу здесь, на SO, но ни один не работал. Почему я всегда получаю всплывающее окно в верхней части экрана?

Ответы на вопрос(2)

Ваш ответ на вопрос