1.显示dialog的时候需要判断以下条件: 1)当前的dialog变量是否为空; 2)当前dialog所属的Activity是否isFinishing; 3)当前dialog是否已经在show中; 2.实例  1)      private Dialog loginDialog;   public void onCreateDialog() {
       if (loginDialog == null) { //缺少判断 当前页面是否Activity,this.isFinishing
              // 创建loginDialog
              loginDialog= new Dialog(LoginActivity.this);
              // 创建自定义样式dialog
              loginDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
              View  view=LayoutInflater.from(LoginActivity.this).inflate(R.layout.logining_dialog, null);
              loginDialog.setContentView(view);
              loginDialog.show();
      } else {
             //缺少判断 当前页面是否Activity,this.isFinishing并且是否已经在显示
                  loginDialogshow();
     }
}
 这样会提示无法添加对话框到LoginActivity,虚拟机会提示我们 LoginActivity是否在running的错误。   2)上面的demo中在处理dialog显示的时候缺少了判断对当前页面是否Activity,this.isFinishing进行判断,只对dialog为空进行了处理。所以需要进行以下处理。 private Dialog loginDialog; public void onCreateDialog() {
       if (loginDialog== null) { 
              // 创建loginDialog
              loginDialog= new Dialog(LoginActivity.this);
              // 创建自定义样式dialog
              loginDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
              View  view=LayoutInflater.from(LoginActivity.this).inflate(R.layout.logining_dialog, null);
              loginDialog.setContentView(view);
              loginDialog.show();
      } else {
            if(!isFinishing() && !loginDialog.isShowing()){                  loginDialog.show();
          }
     }
}

更多相关文章

  1. Notification 的开发指南
  2. 测试为Android模拟器创建和管理sdcard image文件
  3. 【精华】Android面试精华总结——Socket网络通信
  4. Android(安卓)如何获取 umeng 的 渠道信息
  5. Kotlin Android入门教程
  6. [android]数组资源
  7. Android(安卓)判断当前线程是否是主线程的两种方法
  8. ContentProvider的工作过程
  9. Android(安卓)对话框 (三)自定义对话框

随机推荐

  1. Android中常用布局属性
  2. Android(安卓)RelativeLayout 属性
  3. android:autoLink和Linkify
  4. Android中Activity启动模式详解
  5. 《Android(安卓)从初学者入门到成为高手
  6. Android(安卓)JNI简单实例(android 调用C/
  7. 在模拟器上运行编译好的android
  8. Android相对布局实现各种梅花效果
  9. Android(安卓)基本控件Text属性
  10. Android(安卓)并发之Handler、Looper、Me