というわけで、グラフを作っています。x と y の計算は、0 から 5000 までの for ループの幅で行われます。ロードに時間がかかります。すべてが終わった?
ファイルが必要です。Graph.java は方程式を受け取り、それを GraphDrawer.java に送信してプロットします。
グラフ: http://pastebin.com/tBvr1d03 GraphDrawer: http://pastebin.com/8ZwUS75u
というわけで、グラフを作っています。x と y の計算は、0 から 5000 までの for ループの幅で行われます。ロードに時間がかかります。すべてが終わった?
ファイルが必要です。Graph.java は方程式を受け取り、それを GraphDrawer.java に送信してプロットします。
グラフ: http://pastebin.com/tBvr1d03 GraphDrawer: http://pastebin.com/8ZwUS75u
を読んでくださいAsyncTask
、それはあなたが望むことをします。
で計算を実行しdoInBackground()
、 を呼び出しpublishProgress()
て更新を UI スレッドに送信し、onProgressUpdate()
それらの更新を受信してグラフ化するために実装します。
はい、通常は、独自のスレッドで低速操作を実行することをお勧めします。長時間 (数秒) ブロックされるメイン スレッドは、ユーザー エクスペリエンスに悪影響を与えるだけでなく、Android がプロセスに問題が発生したと判断し、強制終了を提供する可能性があります。
ただし、複数のスレッドから UI を操作すると未定義の結果が生じる可能性があるため、非 UI スレッドで生成されたグラフを使用して UI を継続的に更新することはできません。詳細については、ここ、特に「ワーカー スレッド」を参照してください。