Всплывающее диалоговое окно не отображается, когда я добавляю прослушиватели кнопок в классе активности вместо класса диалога - PullRequest
0 голосов
/ 11 декабря 2018

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

Я создал отдельный класс, расширяющий класс диалога, который выглядит примерно так:

public class rewarded_ad_popup extends Dialog implements View.OnClickListener {

    public Activity c;
    public Dialog d;
    public Button yes, no;

    public rewarded_ad_popup(Activity a) {
        super(a);
        this.c = a;
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.rewarded_ads_popup);
        yes = (Button) findViewById(R.id.btn_yes);
        no = (Button) findViewById(R.id.btn_cancel);
        yes.setOnClickListener(this);
        no.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btn_yes:
                //logic required
                break;
            case R.id.btn_cancel:
                dismiss();
                break;
            default:
                break;
        }
        dismiss();
    }
} 

Итак, когда я вызываю это из своей активности, всплывающее окно выглядит нормально.Но я не хочу выполнять эту функцию прослушивания кнопок здесь, в этом диалоговом классе;Я хочу выполнять эти действия только в Деятельности - как мне этого добиться ??

Я удалил слушателей кнопок отсюда и добавил в свой класс занятий, но затем всплывающее окно перестало появляться.

...