ハンドラーは基本的にコードの小さなセクションなどを実行するために使用されることを知りました...
しかし、特にどのような場合にハンドラーを使用するのが理想的かについての正確なシナリオはわかりませんでした。
何か助けて???
ありがとう、デビッド
ハンドラーは、他の (非 UI) スレッドから UI を更新するために使用されます。
たとえば、Activity クラスで Handler を宣言できます。
Handler h = new Handler();
次に、いくつかの UI (進行状況バー、ステータス メッセージなど) を更新したい別のスレッドに他のタスクがあります。これはクラッシュします:
progressBar.setProgress(50);
代わりに、これを呼び出します。
h.post(new Runnable() {
public void run() {
progressBar.setProgress(50);
}
});
私は初心者ですが、最近これを学んだので、初心者の例を挙げます。他にもたくさんあると思います。
Handler
別のスレッドで何かをしているときにメイン UI を更新する場合は、 a を使用する必要があります。たとえば、私の場合、ファイルで実行される画像スライドショー コードで使用しましたTimerTask
。別のスレッドにあるためImageView
、 内から次の画像でメイン UI を更新することはできません。TimerTask
したがって、 a を使用するHandler
必要があります。そうしないと、エラーが発生します。
これはほんの一例です。これが役立つことを願っています。