多線程和服務

多線程和服務

  1. runOnUiThread

    在子線程調用,直接運行在ui主線程

    runOnUiThread(new Runnable() {
       @Override
       public void run() {
    
       }
    });
  2. @SuppressLint(“HandlerLeak”) warning解決

    private Handler handler = new Handler(new Handler.Callback() {//6
       @Override
       public boolean handleMessage(Message msg) {//6
           switch (msg.what) {
               case UPDATE_TEXT:
                   // 在這裏可以進行UI操作
                   text.setText("Nice to meet you");
                   return true;
               default:
                   return false;
           }
       }
    });
  3. 異步消息處理機制

    1).Message 信息載體 子段:waht(類型區分) arg1和arg2(整型攜帶者) obj(Object攜帶者)

    2).MessageQueue Message存儲隊列

    3).Handler 發消息和處理消息

    4).Looper MessageQueue的轉軸,管理者實現消息的傳遞

  4. AsyncTask使用

    1).public class DownloadTask extends AsyncTask

發佈了70 篇原創文章 · 獲贊 3 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章