HandlerThread hThread = new HandlerThread("childThread");
childHandler = new Handler(hThread.getLooper(), new
Handler.Callback() {
@Override
public boolean handleMessage(Message msg) {
switch(msg.what) {
case 0:
loadOverlay(_mapView);
break;
default:
break;
}
return true;
}
}
);
hThread.start();
childHandler.sendEmptyMessage(0);
在new Handler 的时候出现空值针异常,甚为不解,求教
贴日志如下
12-03 20:52:45.620: E/AndroidRuntime(13364): Caused by: java.lang.NullPointerException
12-03 20:52:45.620: E/AndroidRuntime(13364): at android.os.Handler.<init>(Handler.java:167)
12-03 20:52:45.620: E/AndroidRuntime(13364): at com.huaxing.roadtbd.map.BasicMap.initialHandler(BasicMap.java:960)
自己完善HandlerThread 需要先start,然后才能使用
正确代码如下:Thread = new HandlerThread("childThread");
hThread.start();
childHandler = new Handler(hThread.getLooper(), new Handler.Callback() {
......
}