当前位置: 首页 > article >正文

Dialog.dismiss()方法无效的解决方法

在最近的项目中使用WebView加载网页,开始时show加载框,结束时dismiss加载框,但是加载框不消失:

private Dialog dialog;web.setWebViewClient(new WebViewClient() {@Overridepublic void onPageStarted(WebView view, String url,Bitmap favicon) {super.onPageStarted(view, url, favicon);dialog = CommonUtils.getCustomLoadingDialog(XXXXActivity.this, "数据正在加载中,请稍后...");dialog.show();}@Overridepublic void onPageFinished(WebView view, String url) {// TODO Auto-generated method stubsuper.onPageFinished(view, url);dialog.dismiss();//在这里时}});

dialog中dismiss()方法源码如下:

public void dismiss() {if (Looper.myLooper() == mHandler.getLooper()) {dismissDialog();} else {mHandler.post(mDismissAction);}}void dismissDialog() {if (mDecor == null || !mShowing) {return;}//我进行了debug调试,到这里发现mWindow已经Destroyed了,所以returnif (mWindow.isDestroyed()) {Log.e(TAG, "Tried to dismissDialog() but the Dialog's window was already destroyed!");return;}try {mWindowManager.removeView(mDecor);} finally {if (mActionMode != null) {mActionMode.finish();}mDecor = null;mWindow.closeAllPanels();onStop();mShowing = false;sendDismissMessage();}}

谷歌了很多,发现一个已经被android废弃的弹出框显示消失方法,解决代码如下:


private Dialog dialog;web.setWebViewClient(new WebViewClient() {@Overridepublic void onPageStarted(WebView view, String url,Bitmap favicon) {super.onPageStarted(view, url, favicon);showDialog(1);}@Overridepublic void onPageFinished(WebView view, String url) {// TODO Auto-generated method stubsuper.onPageFinished(view, url);dismissDialog(1);}});}@Override@Deprecatedprotected Dialog onCreateDialog(int id) {if (id == 1) {if (dialog == null) {dialog = CommonUtils.getCustomLoadingDialog(XXXXActivity.this, "数据正在加载中,请稍后...");}return dialog;}return super.onCreateDialog(id);}
http://www.lryc.cn/news/2418420.html

相关文章:

  • 如何利用python盗qq_一个团队为了让我帮他提高流量,竟然盗我QQ,没办法,我只好帮他用python刷了刷流量!...
  • 电脑浏览器打不开但是可以上网微信和qq可以正常登录的解决办法
  • 中央处理器 —— CPU的功能和基本结构
  • PGXZ-腾讯全功能分布式关系数据集群
  • 一次macOS的升级填坑(macOS Catalina - macOS Monterey)
  • 笛卡尔积是什么?多表查询中的消除笛卡尔积。
  • Drupal10使用composer安装module和theme
  • UEFI与 Legacy BIOS两种启动模式详解
  • 常用CHM帮助文档集锦下载
  • html 全场开场动画,HTML5 星际大战电影开场字幕动画
  • 适用于 Java 程序员的 CSP ,第 2 部分
  • LCD常见接口总结
  • jquery获取input的值
  • python读取excel汉字转成拼音_怎样把excel中的汉字转换成拼音
  • MSN:表情自动安装方法(转)
  • 2005年世界500强公司名单
  • 解决思科 Cisco Packet Tracer 7.2登录问题
  • 【代班大咖】献给测试伙伴的特殊礼物——十年,从手工测试到最年轻VP之路...
  • python3 爬虫 爬取图片
  • android模拟器对应键盘快捷键
  • C/C++笔试题(很多)
  • repeater控件介绍、 repeater嵌套的代码实现
  • 集群、负载均衡和分布式的区别
  • 网络管理
  • Nginx反向代理-2-根据URL中的目录地址实现代理转发
  • HTC Desire G7刷机
  • 个人博客网站搭建教程
  • IP地址、子网掩码、网络号、主机号、网络地址、主机地址、IP段/数字
  • Linux内存布局详解
  • 少儿编程Scratch第一课:欢迎来到Scratch世界!