搜尋

首頁  >  問答  >  主體

android - handler的sendMessage()和handleMessage()能不能都在主线程,如果可以,那这样做有必要么?

高洛峰高洛峰2772 天前1697

全部回覆(11)我來回復

  • 怪我咯

    怪我咯2017-04-17 17:18:30

    Handler主要用於非同步訊息的處理,
    如果都是在主線程,我個人覺得沒必要

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-17 17:18:30

    這個肯定是能的,至於是否有必要要看個人習慣了。

    回覆
    0
  • 阿神

    阿神2017-04-17 17:18:30

    可以都在主線程,做一些連動的時候可以用到,自訂控制時也有可能用到

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 17:18:30

    1. 能。

    2. 看業務才能說有沒有必要。我要說沒必要,你一定要寫個大新聞把我批判一番

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:18:30

    答案是肯定的,很多教學的簡單demo都是這樣寫的,但是專案中一般都不會吧

    回覆
    0
  • 天蓬老师

    天蓬老师2017-04-17 17:18:30

    Handler 用於線程間通訊,主線程和主線程之間當然沒問題

    不過個人感覺 Handler 畢竟用起來過於手動、繁瑣,而且限制很多,需要在新線程執行任務並發布給主線程的話,為何不試試 AsyncTask 或者 RxAndroid?

    另外都是主線程,幹嘛不直接呼叫方法?

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 17:18:30

    你需要控制ui更新的節奏可用這種邏輯

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:18:30

    這個事肯定的呀
    有木有必要看你具體需求吧

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-17 17:18:30

    一定是可以的,主要還是看需求,一般都在主線程裡完成

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-17 17:18:30

    如果沒有指定Looper,預設就是在主執行緒的。如果處理不耗時,都在主執行緒是沒關係的。

    回覆
    0
  • 取消回覆