Handler 基本使用
2018-07-29 本文已影响0人
一只笔
Handlerw创建
重写接收消息的方法,把接收的消息进行处理
@SuppressLint("HandlerLeak")
private var mHandler: Handler =
object : Handler() {
override fun handleMessage(msg: Message?) {
super.handleMessage(msg)
//处理what 消息
if (msg!!.what == 100) {
Log.i(TAG, "收到消息${msg.what}")
//处理 arg1 消息
} else
Log.i(TAG, "收到消息,arg1:${msg.arg1}*****arg2:${msg.arg2}")
}
}
Handlerw 发关消息
/**通过Handler 发送消息*/
private fun setMessage() {
//发送延时
mHandler.postDelayed({
//发送what
mHandler.sendEmptyMessage(100)
val message = Message()
message.arg1 = 200
message.arg2 = 300
//发送message
mHandler.sendMessage(message)
//设置延时1秒
}, 1000)
}
点击方法
点击延时1秒打印Log
//点击发送消息
button.setOnClickListener(View.OnClickListener {
setMessage()
})
输出结果:
