管灌系统巡查员智能手机App
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package cc.shinichi.library.tool.common
 
import android.os.Handler
import android.os.Looper
import android.os.Message
import java.lang.ref.WeakReference
 
/**
 * Handler相关工具类
 *
 *  实现 os.handler的callback接口
 *
 *  在需要处直接调用handler.sendmessage...即可
 * implements Callback
 * private HandlerUtils.HandlerHolder handlerHolder;
 * handlerHolder = new HandlerHolder(this);
 */
class HandlerHolder(listener: Callback?) : Handler(Looper.getMainLooper()) {
 
    private var mListenerWeakReference: WeakReference<Callback?>? = WeakReference(listener)
 
    override fun handleMessage(msg: Message) {
        mListenerWeakReference?.get()?.handleMessage(msg)
    }
}