私はLooper
Handler
について学んでいますが、これはほとんどがUIスレッドの作業に使用されていることがわかりました。それで私はハンドラーの子クラスとhandleMessage
メソッドの使用が必要なときは少し混乱します。LooperとHandlerは正確に何のために使用されましたか?
例わかりやすい例によってUIスレッドで作業できます。
Handler handler = new Handler();
handler.post(new Runnable(){
public void run(){
// update UI here
}
});
簡単なコードで簡単にUIスレッドと通信できます。ここでハンドラは自動的にMainLooperに接続されます。
次に、Handlerの子クラスを使用し、handleMessage(Message msg)
メソッドを使用する必要があるとき。
私はすでにドキュメントを読んでいますが、それでも理解できませんでした。ハンドラの子クラスが必要なときは尋ねましたか? 'handleMessage(Message m);をオーバーライドする必要があります。 –