2013-06-06 6 views
0

Появляются четыре окна предупреждения, которые я хочу, чтобы все они были удалены одновременно с использованием метода таймера. Что мне делать?Сброс нескольких диалогов сразу в методе таймера

AlertDialog.Builder mainBuilder = new AlertDialog.Builder(AdminViewActivity.this); 
           mainBuilder.setMessage("Table No " +TableList.get(i)+" At Time "+TimeList.get(i)) 
           .setPositiveButton("Waiter Called", new DialogInterface.OnClickListener() 
           { 
            public void onClick(DialogInterface dialog, int id) { 
             dailog1=dialog; 
             dialog.dismiss();  
            } 
           }); 
           AlertDialog mainAlert = mainBuilder.create(); 
           mainAlert.requestWindowFeature(Window.FEATURE_NO_TITLE); 
           WindowManager.LayoutParams WMLP = mainAlert.getWindow().getAttributes(); 
           mainAlert.getWindow().getAttributes().gravity = Gravity.LEFT|Gravity.CENTER_VERTICAL; 
           WMLP.x = 10; //x position 
           WMLP.y = 300; //y position 
           mainAlert.getWindow().setAttributes(WMLP); 
           mainAlert.show(); 

ответ

1

Сохранить ссылку на все диалогах, а затем просто уволить его:

public class MainActivity extends Activity { 
    Dialog mDialog1; 
    Dialog mDialog2; 
    Dialog mDialog3; 
    Dialog mDialog4; 

    public void someAction() { 
     mDialog1.dismiss(); 
     mDialog2.dismiss(); 
     mDialog3.dismiss(); 
     mDialog4.dismiss(); 
    } 

    public void somewhere() { 
     mDialog1 = new dialog(); 
     mDialog2 = new dialog(); 
     mDialog3 = new dialog(); 
     mDialog4 = new dialog(); 
    } 
} 
+0

Dialog1 Dialog2 dialog3 dialog4 все местные varible объявлены внутри Читающий мысли OnClick – hemant

+0

У меня есть метод таймера я хочу, чтобы откройте диалоговое окно, когда встречается событие таймера – hemant

+0

@hemant. Почему вы не сохраняете ссылку на диалог вместо поля вместо локальной? – Warpzit

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