検索

ホームページ  >  に質問  >  本文

android - Handler与runOnUiThread更新UI的区别

Handler与runOnUiThread更新UI有什么区别?
分别更适合在哪种情况下用?

PHP中文网PHP中文网2815日前619

全員に返信(2)返信します

  • 阿神

    阿神2017-04-17 17:58:13

    実装原則の点では、runOnUiThreadHandler の助けを借りて実装されます。
    使用シナリオの場合、runOnUiThread は使いやすく、同じ Handler を共有するため、効率的で使いやすくなります。また、メインスレッド内で直接呼び出された場合、runOnUiThreadをメッセージキューにプッシュせずに即座に判定して実行することもできます。
    Handler は、runOnUiThread よりも基本的なため、マーキングや遅延などの機能を実装でき、メイン スレッドの代わりに他のメッセージ ループ スレッドをプッシュできます。

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 17:58:13

    runOnUiThread は、Runnable オブジェクトを Message に直接カプセル化し、実行のためにメイン スレッドの Looper に渡します。実行コードは次のとおりです:

    リーリー

    Handler が同じ効果を得たい場合は、まず Handler によってバインドされる Looper がメインスレッドの Looper である必要があります。これは Looper.getMainLooper() を通じて取得できます。次に、実行可能なオブジェクトもポスト経由で送信します。

    本質的には違いはありません。

    返事
    0
  • キャンセル返事