AriesHoo / UIWidget

一个集成TabLayout、UIAlertDialog、UIActionSheetDialog、UIProgressDialog、TitleBarView(自带沉浸式标题栏)、CollapsingTitleBarLayout、RadiusView(圆角及状态背景设置View解放shape文件)、KeyboardHelper(软键盘控制及遮挡控制类)、StatusViewHelper(状态栏沉浸帮助类)、NavigationViewHelper(导航栏沉浸式帮助类)、AlphaViewHelper(View透明度控制帮助类) 等项目常用UI库

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LoadingActivity问题

Allen0828 opened this issue · comments

使用ProgressDialog 发现延迟关闭是关闭不了的. 很奇怪 在测试代码里添加了 点击空白区域不响应, 就不能关闭了. 很好奇大家在使用的时候 都是怎么关的?
LoadingActivity -> 94行

 case R.id.rtv_showLoading:
        new UIProgressDialog.NormalBuilder(this)
                 .setMessage(isShowMsg ? R.string.loading : 0)
                 .setIndeterminateDrawable(isDefaultProgress ? 0 : R.drawable.progress_loading)
                 .setBackgroundRadiusResource(isDefaultRadiusBack ? R.dimen.dp_radius_loading : 0)
                 .setCanceledOnTouchOutside(false)  // 新增
                 .create()
                 .setDimAmount(isBackDim ? 0.6f : 0f)
                .show();
      break;

就是 我需要在展示Dialog之后 自动关闭. 比如 延迟5秒后关闭.
但是 现在 使用UIWidget组件, 用户点击空白区域 Dialog会消失. 所以我加了一句 不响应空白区域的代码.
然后 不知道应该怎么关闭了
之前尝试使用了 以下代码 但是关不掉.
刚接触安卓 实在不好意思 😓

val dialog = UIProgressDialog.NormalBuilder(this)
// init代码
// 延迟2秒后自动关闭
Timer().schedule(2000) {
                runOnUiThread {
                    dialog. create().dismiss()
                }
   }

调用一次create()就会返回一个Dialog 对象。show()和dismiss()要针对同一个Dialog对象。不能show()是dialog A 然后dismiss() dialog B