2016-04-27 20 views
0

ACTION_UPに進捗ダイアログを表示しようとしていますが、何か異常な理由で動作していないため、ログにエラーが表示されず、ACTION_UPブロックのすべてが進捗状況ダイアログ?誰が何が起こっているか考えている?メインスレッドは、私はなぜ私がわからない場合、あなたがショーを呼び出す場合ProgressDialogが表示されません - Android

私もそれをテストするためにトーストを追加し、それだけで正常に動作します...何らかの理由で時々progressDialogについては

button.setOnTouchListener(new View.OnTouchListener() { 
    public boolean onTouch(View view, MotionEvent event) { 
     if (event.getAction() == android.view.MotionEvent.ACTION_DOWN) { 
      //works here 
      //progress = ProgressDialog.show(context,"Processing...","Preparing your file", true); 
     } else if (event.getAction() == android.view.MotionEvent.ACTION_UP ) { 

      Toast toast; 
      duration = Toast.LENGTH_LONG; 
      toast = Toast.makeText(context, text, duration); 
      toast.show();//this work and the toast is getting displayed 

      progress = ProgressDialog.show(context,"Processing...","Preparing your file", true); 

     } 
     return true; 
    } 

}); 

答えて

0

は文句を言わないを示し私の仕事はarroundの時間前に同じ問題に遭遇することは、私はあなたがsubShowdialogを()置く場所の下のコードのようなダイアログ通知を表示する傾向があり、ハンドラと実行可能

new Handler().postDelayed(new Runnable(){ 
     @override 
     public void run() { 
      progressDialog.show(); 
     } 
},100); 
+0

私はそれがいつかそれが –

+0

私のプロジェクトでは、メインスレッド上でのショーを呼び出すことができるよ://はい、thunder413 – thunder413

+0

:)をしないか、あなたは素晴らしい素材ライブラリhttpsを使用することができます仕事時々言ったように私は... – thunder413

0

を使用してショーを呼び出すことでした。あなたのトーストを見せている場所。うまくいくはずです。

private void subShowdialog() { 
    final ProgressDialog progDailog = ProgressDialog.show( 
      context, "Processing...","Preparing your file", true); 

    new Thread() { 
     public void run() { 
      try { 
       sleep(1000); 
       //Start whatever action here 
       progDailog.dismiss(); 
      } catch (Exception e) { 
      } 

     } 
    }.start(); 
} 
+0

メモリリークが発生することができますので、進捗ダイアログおっと、I他の人がすでに正しい答えを加えてから私は自分の答えを投稿しました。(私がコーヒーを作りながら答えを出すように教えてください)。 –

関連する問題