スレッド、ビュー、またはアクティビティの間でメッセージを送信する場合、2つの一見同じ方法があります。sendToTargetとsendMessageの違い
その後、Handler
のsendMessage
メソッドを使用し、最初の、そして私に最も直感的には、obtain
にMessage
です:
Message msgNextLevel = Message.obtain();
msgNextLevel.what = m.what;
mParentHandler.sendMessage(msgNextLevel);
それとも、あなたが使用し、Handler
を提供するメッセージをobtain
できますMessage
さんsendToTarget
方法:
Message msg = Message.obtain(parentHandler);
msg.what = 'foo';
msg.sendToTarget();
なぜ同じことを達成するためのこれらの二つの方法が存在するのですか?彼らは異なった振る舞いをしていますか?
http://androidxref.com/7.0.0_r1/xref/frameworks/base/core/java/android/os/Message.java#415 – pskink
また、アクティビティ間でメッセージを送信することはできません – Selvin
@pskink Aha、so 'sendToTarget'は実際には*、' sendMessage'です。 'obtain()'と 'get(Handler)'はどうでしょうか? – LondonRob