forked from yangchong211/YCAppTool
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
d78cf8a
commit 262ac71
Showing
5 changed files
with
67 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 changes: 1 addition & 1 deletion
2
...m/ycbjie/library/utils/HandlerHolder.java → .../library/utils/handler/HandlerHolder.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
56 changes: 56 additions & 0 deletions
56
library/src/main/java/com/ycbjie/library/utils/handler/HandlerUtils.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
package com.ycbjie.library.utils.handler; | ||
|
||
import android.os.Handler; | ||
import android.os.Message; | ||
|
||
import java.lang.ref.WeakReference; | ||
|
||
/** | ||
* <pre> | ||
* @author yangchong | ||
* blog : https://github.com/yangchong211 | ||
* time : 2016/03/22 | ||
* desc : Handler | ||
* revise: 弱引用–>随时可能会被垃圾回收器回收,不一定要等到虚拟机内存不足时才强制回收。 | ||
* </pre> | ||
*/ | ||
public class HandlerUtils { | ||
|
||
private HandlerUtils() { | ||
throw new UnsupportedOperationException("不能直接创建"); | ||
} | ||
|
||
public static class HandlerReference extends Handler { | ||
|
||
private final WeakReference<Object> mObject; | ||
private OnReceiveMessageListener mListener; | ||
|
||
|
||
public HandlerReference(Object object, OnReceiveMessageListener listener) { | ||
this.mObject = new WeakReference<>(object); | ||
this.mListener = listener; | ||
} | ||
|
||
@Override | ||
public void handleMessage(Message msg) { | ||
super.handleMessage(msg); | ||
Object object = mObject.get(); | ||
if (object != null && mListener!=null){ | ||
//处理逻辑 | ||
mListener.handlerMessage(msg); | ||
} | ||
} | ||
|
||
/** | ||
* 收到消息回调接口 | ||
*/ | ||
public interface OnReceiveMessageListener { | ||
/** | ||
* 消息处理 | ||
* @param msg msg | ||
*/ | ||
void handlerMessage(Message msg); | ||
} | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters