如何使用翻新2纠正Fragment中的句柄Dialog.dismiss()

西贝柳斯·塞拉菲尼(Sibelius Seraphini)

我正在使用Retrofit 2向Fragment中的服务器发出POST请求,如下所示:

Call<MyResponse> call = apiService.myPost(params);
call.enqueue(myCallback);

mProgress = ProgressDialog.show(getActivity(), "Working", "Working"", true);

我想在请求完成后关闭ProgressDialog,如您在此处看到的:

class myCallback {
    onResponse() {
       mProgress.dismiss();
    }
    onFailture() {
       mProgress.dismiss();
    }
}

但是,此方法无法正常工作,因为用户可能旋转或离开当前活动,从而导致此错误:

Fatal Exception: java.lang.IllegalArgumentException: View=com.android.internal.policy.impl.PhoneWindow$DecorView{1ec6c6d0 V.E..... R.....ID 0,0-513,242} not attached to window manager
       at android.view.WindowManagerGlobal.findViewLocked(WindowManagerGlobal.java:396)
       at android.view.WindowManagerGlobal.removeView(WindowManagerGlobal.java:322)
       at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:116)
       at android.app.Dialog.dismissDialog(Dialog.java:341)
       at android.app.Dialog.dismiss(Dialog.java:324)

在这种情况下,如何正确关闭对话框?

分形扳手

当片段从其活动中分离时,您应该关闭该对话框,或者添加检查片段是否仍被连接的对话框。下面的示例调用iwego()进行检查。

onResponse() {
     if (isAdded()) {
         mProgress.dismiss();
     }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

NullPointerException on dialog.dismiss()

来自分类Dev

ProgressDialog.dismiss中的IllegalArgumentException

来自分类Dev

.dismiss()在AlertDialog中显示错误

来自分类Dev

ProgressDialog.dismiss中的IllegalArgumentException

来自分类Dev

Dismiss dialog coming from outside my application

来自分类Dev

离子 2 - 类型“ActionSheetController”上不存在属性“dismiss”

来自分类Dev

如何:授予 SKScene 访问dismiss() UIKit 方法的权限

来自分类Dev

使用新的AlphaAnimation覆盖对话框dismiss()

来自分类Dev

使用新的AlphaAnimation覆盖对话框dismiss()

来自分类Dev

dialog.dismiss方法在AlertDialog中没有意义

来自分类Dev

如何将FLAG_DISMISS_KEYGUARD与指纹传感器配合使用

来自分类Dev

来回导航到设置屏幕时,对话框未关闭dialog.dismiss()

来自分类Dev

How to dismiss a dialog box displayed by MS Word when openning document in Python/Win32

来自分类Dev

应该在setPositiveButton或setNegativeButton或其他onClick中的onClick中调用dismiss()吗?

来自分类Dev

IllegalArgumentException in ProgressDialog.dismiss

来自分类Dev

AlertDialog.dismiss()?

来自分类Dev

Dismiss()无法用于Customize AlertDialog

来自分类Dev

NullPointerException出错pDialog.dismiss()

来自分类Dev

我如何对data-dismiss =“ modal”产生两种影响;一种重新加载父页面,而另一种不加载

来自分类Dev

在PopupWindow.dismiss上刷新父片段

来自分类Dev

我可以在dismiss()之后显示()FragmentDialog吗?

来自分类Dev

removeDialog(),dismissDialog()和dismiss()之间的区别

来自分类Dev

Swift: Enable "dismiss keyboard" button on iPhone?

来自分类Dev

AlertDialog.dismiss()不起作用

来自分类Dev

AngularJS UI Bootstrap dismiss()无法正常工作

来自分类Dev

myDialog.dismiss()和myDialog.getDialog()。dismiss()有什么区别?

来自分类Dev

如何使用翻新2在ListView中显示JSON数据

来自分类Dev

如何使用翻新2在ListView中显示JSON数据

来自分类Dev

删除DialogFragment的正确方法:dismiss()或transaction.remove()?

Related 相关文章

  1. 1

    NullPointerException on dialog.dismiss()

  2. 2

    ProgressDialog.dismiss中的IllegalArgumentException

  3. 3

    .dismiss()在AlertDialog中显示错误

  4. 4

    ProgressDialog.dismiss中的IllegalArgumentException

  5. 5

    Dismiss dialog coming from outside my application

  6. 6

    离子 2 - 类型“ActionSheetController”上不存在属性“dismiss”

  7. 7

    如何:授予 SKScene 访问dismiss() UIKit 方法的权限

  8. 8

    使用新的AlphaAnimation覆盖对话框dismiss()

  9. 9

    使用新的AlphaAnimation覆盖对话框dismiss()

  10. 10

    dialog.dismiss方法在AlertDialog中没有意义

  11. 11

    如何将FLAG_DISMISS_KEYGUARD与指纹传感器配合使用

  12. 12

    来回导航到设置屏幕时,对话框未关闭dialog.dismiss()

  13. 13

    How to dismiss a dialog box displayed by MS Word when openning document in Python/Win32

  14. 14

    应该在setPositiveButton或setNegativeButton或其他onClick中的onClick中调用dismiss()吗?

  15. 15

    IllegalArgumentException in ProgressDialog.dismiss

  16. 16

    AlertDialog.dismiss()?

  17. 17

    Dismiss()无法用于Customize AlertDialog

  18. 18

    NullPointerException出错pDialog.dismiss()

  19. 19

    我如何对data-dismiss =“ modal”产生两种影响;一种重新加载父页面,而另一种不加载

  20. 20

    在PopupWindow.dismiss上刷新父片段

  21. 21

    我可以在dismiss()之后显示()FragmentDialog吗?

  22. 22

    removeDialog(),dismissDialog()和dismiss()之间的区别

  23. 23

    Swift: Enable "dismiss keyboard" button on iPhone?

  24. 24

    AlertDialog.dismiss()不起作用

  25. 25

    AngularJS UI Bootstrap dismiss()无法正常工作

  26. 26

    myDialog.dismiss()和myDialog.getDialog()。dismiss()有什么区别?

  27. 27

    如何使用翻新2在ListView中显示JSON数据

  28. 28

    如何使用翻新2在ListView中显示JSON数据

  29. 29

    删除DialogFragment的正确方法:dismiss()或transaction.remove()?

热门标签

归档