Android: AsyncTask ProgressDialog will not open in ActivityGroup

后端 未结 3 1004
滥情空心
滥情空心 2021-02-05 13:57

I am trying to have a a progress dialog open when polling my server. The class is an ActivityGroup because it is nested within a tab bar. To keep the view within the frame, the

3条回答
  •  一向
    一向 (楼主)
    2021-02-05 14:49

    If the ActivityGroup is within a TabActivity you have nested activities with more then two levels. Android doesn't support this at the moment but there is a workaround. You have to pass the parent activity to the dialog.

    Create a helper method for this purpose in the activity class:

    private Context getDialogContext() {
        Context context;
        if (getParent() != null) context = getParent();
        else context = this;
        return context;
    }
    

    Then change the line

    private final ProgressDialog dialog = new ProgressDialog(CheckInActivity.this);
    

    to

    private final ProgressDialog dialog = new ProgressDialog(getDialogContext());
    

提交回复
热议问题