2011-07-21 5 views
0

サーバからデータを取得しようとしています。何らかの理由で途中で失敗した場合は、再度ダウンロードを再開するよう警告メッセージを表示しています。だから、私がやったことは、警告ダイアログのokボタンでもう一度ダウンロードメソッドを呼び出したことです。これにより、アラートダイアログがフリーズし、フォームの非表示が非表示になります。ダウンロードが完了した場合にのみ、アラートダイアログは閉じられます。誰でもここにいくつかのアイデアを提案できますかalertDialogを手動で解除するにはどうすればよいですか?

+1

コード例をいくつか追加してください。最初にダイアログを閉じてからダウンロードを開始する必要があります。その逆ではありません。 – powerMicha

答えて

0

onclickイベントで最初にダイアログを閉じる(dialog.cancel();またはdialog.dismiss() )、ダウンロード機能を再度呼び出します。 このコードを使用して、ダイアログshowDialog(0)を取得します。

protected Dialog onCreateDialog(int id) 
{ 
    AlertDialog.Builder builder = new AlertDialog.Builder(this); //builder to create dialog 

    switch(id) 
    { 
    case 0: 

     if(GAME_STARTED) 
     { 
      builder.setTitle("failed"); 
      builder.setMessage("xxxxx"); 

      //The buttons set for the dialog box 
      builder.setPositiveButton("YES", new DialogInterface.OnClickListener() { 
       @Override 
       public void onClick(DialogInterface dialog, int which) 
       { 
        builder.dismiss(); 
            download_again(); 
       }}); 


     } 
     break; 
default: 
    } 
    return builder.create();  
} 
+0

これはカスタムダイアログではありません。 AlertDialogです。 cancel()やdismiss()のようなメソッドはありません。 –

+0

これを参照してくださいhttp://stackoverflow.com/questions/4336470/how-do-i-close-an-android-alertdialog –

関連する問題