2013-07-26 4 views
0

Я хотел бы добавить диалоговое окно в свою кодировку. Диалоговое окно может выскочить. Предположим, что диалог закроется после нажатия пользователем кнопки ok, но диалоговое окно закрывается автоматически. Это мой код. Любая проблема?Диалоговое окно Закрыть автоматически

private void updataAccount(int type){ 
    Iterator<AccountData> iteratorSort = commondata.account.values().iterator(); 
    while (iteratorSort.hasNext()){ 
     AccountData data = iteratorSort.next(); 
     if(data.id == Integer.parseInt(accountId[account_spn.getSelectedItemPosition()])) 
     { 
      if(type == INCOME_MODE){ 
       data.balance = data.balance+Double.parseDouble(value); 
       commondata.updateAccount(data); 
      }else if(type == PAYOUT_MODE){ 
       data.balance = data.balance-Double.parseDouble(value); 
       commondata.updateAccount(data); 
       if(data.balance < 0) 
       { 
        AlertDialog.Builder builder = new AlertDialog.Builder(this); 
        builder 
        .setTitle("Care Money") 
        .setMessage("Your amount in this account is negative!") 
        .setIcon(android.R.drawable.ic_dialog_alert) 
        .setPositiveButton("OK", new DialogInterface.OnClickListener() 
        { 
         public void onClick(DialogInterface dialog, int which) 
         {  
           dialog.dismiss(); 
        } 
        });      
       AlertDialog alert = builder.create(); 
         alert.show(); 
       } 
      } 
      return; 
     } 
    } 
+0

Когда вы говорите автоматически, он делает это через определенное время или событие? – frogmanx

+0

@frogmanx yes.it автоматически закрывается через 1 секунду, после чего открывается диалоговое окно. – user2303640

+0

Я ничего не вижу, что вызывает это? –

ответ

1

Попробуйте использовать этот

builder.setCancelable(false); 
    builder.show(); 

Вместо этого

AlertDialog alert = builder.create(); 
      alert.show(); 
+0

http://stackoverflow.com/a/6494201/2594077, проверьте это, если вы хотите реализовать диалог в AsyncTask – NewAndroidTechie

0

Chitan Пожалуйста, попробуйте этот код Это работает нормально для меня, надеюсь, что это поможет U-то

AlertDialog.Builder builder = new AlertDialog.Builder(this); 
        builder.setTitle("Error"); 
        builder.setMessage(error) 
          .setCancelable(false) 
          .setPositiveButton("OK", new DialogInterface.OnClickListener() { 
           public void onClick(DialogInterface dialog, int id) { 
            error=""; 
           } 
          }); 
        AlertDialog alert = builder.create(); 
        alert.show(); 
0

Создайте AsyncTask, чтобы отображает диалог, затем спит в течение 1000 миллисекунд, затем закрывает диалог.

+0

как? жаль, что я новичок. – user2303640

+0

Идеальная и полная ссылка, приветствия: http://developer.android.com/reference/android/os/AsyncTask.html – LuckyMe

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