给定代码
private static class MyHandler extends Handler
{
private final WeakReference<MainActivity> mTarget;
MyHandler(MainActivity intarget) {
mTarget = new WeakReference<MainActivity>(intarget);
}
@Override
public void handleMessage(Message msg)
{
MainActivity target = mTarget.get(); // target becomes null will causes null pointer exception
switch (msg.what) {
..
}
}
}
为了避免 NullPoinetrException 我可以使用:
if(target != null {
// do something
}
但是当目标变为空时,我无法在应用程序中继续进行。
问题:
有没有办法在目标变为空时恢复目标并继续进行,或者我应该完成活动或应用程序?
谢谢。