2013-08-31 3 views
0

У меня есть простой waitdialog, который я пытаюсь отобразить. Дисплей работает, но увольнение не работает. Диалог показывает навсегда. Кто-нибудь видит проблему?увольнение диалога не работает

рассматривает

ProgressDialog waitDialog; 
waitDialog=new ProgressDialog(this); 
waitDialog.show(this, "wait","wait"); 
5secondstask(); 
waitDialog.dismiss(); 

Кроме того, не выполняя 5secondstaks() и показ и непосредственно отвергая его это показывает навсегда.

ProgressDialog waitDialog; 
waitDialog=new ProgressDialog(this); 
waitDialog.show(this, "wait","wait"); 
waitDialog.dismiss(); 
+0

Вы осуществляете деятельность или деятельность по фрагментации? – Piyush

+0

Я вызываю функцию в oncreate() моей деятельности –

ответ

1

DO так как есть.

ProgressDialog waitDialog; 
waitDialog = ProgressDialog.show(this, "wait","wait"); 
5secondstask(); 
waitDialog.dismiss(); 

UPDATE Explaination

В вашем случае не работает, потому что progressdialog вы создаете с помощью waitDialog=new ProgressDialog(this); является ссылка на переменную "waitDialog". Но когда вы вызываете метод show, он возвращает еще один объект progressdialog. который не ссылается на переменную «waitDialog». Потому что show() - статический метод, который возвращает новый объект progressdialog.

Ваш случай также будет работать, если назначить ссылку на переменную waitDialog.

ProgressDialog waitDialog; 
waitDialog=new ProgressDialog(this); 
waitDialog=waitDialog.show(this, "wait","wait");//UPDATE here to work with your case 
5secondstask(); 
waitDialog.dismiss(); 
+0

Обе версии, которые я скопировал непосредственно в свой код, кажется, не работают. В обеих версиях диалог не отображается. Спасибо, в любом случае. –

Смежные вопросы