我K,用了2天时间,终于解决了,zxing是鸡肋,可爱又可恨。
总体思路是
在CapureActivity的
onResume 开启 扫描
在
onPause 关闭 扫描
在
@Override
public void surfaceCreated(SurfaceHolder holder) {
if (holder == null) {
Log.e(TAG,
"*** WARNING *** surfaceCreated() gave us a null surface!");
}
MainTabActivity t= (MainTabActivity) getParent();
Activity currentActivity = t.getCurrentActivity();
if (!hasSurface && (currentActivity instanceof CaptureActivity)) {
initCamera(holder);
}
hasSurface = true;
}
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
hasSurface = false;
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width,
int height) {
}
基本都能解决问题(包括 tab子页面的回退,还有来电话黑屏等等。。。。),不能搞定的qq联系我:20713404