iT邦幫忙

2021 iThome 鐵人賽

DAY 14
0
自我挑戰組

社畜轉行之旅,30天Kotlin學習筆記系列 第 14

Day 14 | 同步與非同步- Handler類別

  • 分享至 

  • xImage
  •  

Handler類別

使不同Thread溝通的機制,將Thread要傳遞的訊息放入Message類別,透過Handler與另一個Thread溝通,讓另一個Thread從類別取得訊息

class MainActivity : AppCompatActivity(){
	//Step1:建立Handler物件接受訊息
	private val handler = Handler(Looper.getMainLooper()) { msg ->
		when (msg.what) { //判斷msg的編號
			1 -> {
				//執行於Main Thread
			}
		}
		return@Handeler true
	}

	override fun onCreate(savedInstanceState: Bundle?){
		super.onCreate(savedInstanceState)
		setContentView(R.layout.activity_main)
		Thread{
			//執行於Background Thread
			//Step2:建立Message物件並加入編號
			val msg = Message()
			msg.what = 1
			//Step3:透過sendMessage傳送訊息
			handler.sendMessage(msg)
		}.start()
	}
}

上一篇
Day 13 | 同步與非同步- Thread類別與runOnUiThread()方法
下一篇
Day 15 | 同步與非同步- Coroutines
系列文
社畜轉行之旅,30天Kotlin學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言