无法使用弹出式窗口

时间:2018-06-28 16:09:58

标签: java android popup

我从HelperClass扩展了MainActivity,后者从AppCompatActivity扩展了。我必须这样做,因为我需要覆盖每个活动中不同的HelperClass中的方法。

例如:

public class MainActivity extends HelperClass {

     @Override
public void methodOne() {
    popupmethod("Title","Some Text",0);
}
  public void popupmethod(final String titel, final String text, final int ToDo) {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                new AlertDialog.Builder(getApplicationContext())
                        .setTitle(titel)
                        .setMessage(text)
                        .setPositiveButton("OK", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int id) {
                                dialog.cancel();
                                changer(ToDo);
                            }
                        })
                        .show();
            }
        });
    }
    public void changer(int xxx){
        switch (xxx) {
            case 0:
                break;
            case 1:
                break;
            case 2:
                break;
        }
    }
}

和(仅是一个例子)

public abstract class HelperClass extends AppCompatActivity{
    @Override
    public void methodOne() {    }

    @Override
    public void methodTwo() {    }
}

现在,当我从服务器获取到HelperClass的答案时,它将调用methodOne()。 (一切正常,但弹出窗口有效)然后我得到“ java.lang.IllegalStateException:您需要在此活动中使用Theme.AppCompat主题(或后代)。”

0 个答案:

没有答案