android – 为什么从后台线程中解除ProgressDialog时没有抛出异常?

android – 为什么从后台线程中解除ProgressDialog时没有抛出异常?,第1张

概述我知道当我尝试在后台线程上显示ProgressDialog时抛出异常无法在未调用Looper.prepare()的线程内创建处理程序, 因为我们正在尝试从后台线程修改UI.但是当我们在后台线程中忽略该对话框时,不会抛出任何异常.为什么我们在后台线程中关闭对话框时没有抛出异常,因为我们也是后台线程中的modifyng UI. 谢谢 这是Dialog的dismiss()方法的代码,显示了为什么没有抛出 我知道当我尝试在后台线程上显示ProgressDialog时抛出异常无法在未调用Looper.prepare()的线程内创建处理程序,

因为我们正在尝试从后台线程修改UI.但是当我们在后台线程中忽略该对话框时,不会抛出任何异常.为什么我们在后台线程中关闭对话框时没有抛出异常,因为我们也是后台线程中的modifyng UI.

谢谢

解决方法 这是Dialog的dismiss()方法的代码,显示了为什么没有抛出异常和dismiss的工作原理:

/** * dismiss this dialog,removing it from the screen. This method can be * invoked safely from any thread.  Note that you should not overrIDe this * method to do cleanup when the dialog is dismissed,instead implement * that in {@link #onStop}. */public voID dismiss() {    if (Thread.currentThread() != mUiThread) {        mHandler.post(mdismissAction);    } else {        mdismissAction.run();    }}
总结

以上是内存溢出为你收集整理的android – 为什么从后台线程中解除ProgressDialog时没有抛出异常?全部内容,希望文章能够帮你解决android – 为什么从后台线程中解除ProgressDialog时没有抛出异常?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1121888.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存