2016-11-25 30 views
1

我有一个对话框,其中在活动创建期间加载了一个对话框,稍后在可运行的代码中显示一个dialog.dismiss。 现在在Activity的onCreate中的某个时候,我的Activity被重新创建以获取有关请求的权限的信息。问题是dialog.dismiss没有在runnable中被触发。对话框永远不会被解雇。Progressdialog由于活动重新创建而失败

dialog = ProgressDialog.show(TripActivity.this, "", "Loading..."); 

final Handler handler1 = new Handler(); 

       handler1.post(new Runnable() { 
        @Override 
        public void run() { 

        //  b=oldvalue; 
        // mListener.doYourWork(id_share); 
         // Post again 16ms later. 
         handler1.postDelayed(this, 5000); 


         dialog.dismiss(); 

回答

1

每当您调用onCreate行ProgressDialog.show()时都会返回一个新的ProgressDialog引用。

在尝试再次创建之前,您应该检查dialog是否为空。此外,请记住在活动要求onDestroy时将其解雇。

+0

工作就像一个魅力!谢谢@BMacedo –

相关问题