-1

Neuroph ネットワークをロードするために使用される loadData() があります。

進行状況ダイアログで実行したいのですが、loadData() の一部が実行されると、進行状況ダイアログが増加します。

そのためのチュートリアルが必要です。

Thread with Handler、AsyncTask は知っています。しかし、これらの 2 つの方法ではそれができません。

4

1 に答える 1

1

だから私はあなたがいくつかの進歩AsyncTaskで更新するために指定されていることを意味するものを使用することをお勧めします。UIこのツールには、次の3つの最も重要な方法が含まれています。

  • doInBackground-バックグラウンドスレッドで作業を行っています。
  • onProgressUpdate-更新用UI(ここでは、ProgressDialogの進行状況をインクリメントできます)
  • onPostExecute-作業が終了した後に呼び出されます。

    次に、AsyncTask強力なツールであり、非常に効率的であり、ジェネリックを使用しているため、タイプセーフです。しかし、それについてもっと読む必要があるので、最初にリファレンスを見てから、VogellaのAndroidスレッド、ハンドラー、AsyncTaskを見てみることをお勧めします。これは素晴らしいソースです。


    次に、を使用しますProgressDialog。したがって、show()実行する前に、それとそれを作成するだけですAsyncTask。次に、onPostExecuteメソッドで、 ProgressDialogを閉じるためにdismissメソッドを呼び出すだけです。

    ProgressDialog pd = new ProgressDialog(this);
    pd.setProgress(0);
    pd.setTitle("Some title");
    pd.setMessage("Some message...");
    pd.show();
    yourTask.execute(); // here you are executing your AsyncTask
    

    次に、OnPostExecuteメソッドでdismissを呼び出します。

    @Override
    protected void onPostExecute(Void unused) {
       pd.dismiss(); // dismissing your ProgressDialog
    }
    
  • 于 2012-07-01T17:18:59.320 に答える