在我的应用程序中,我有一个使用
dm77/barcodescanner的片段.
我正在开一个商店应用程序,例如:你扫描一个项目 – >产品页面 – >继续购物 – >打开另一个扫描仪会话 – >等等
现在,正如您所看到的,因为clinet想要维护后端堆栈,该片段的多个意图可以打开(但不能同时).
带扫描仪的第一个片段运行良好,其他片段有静止图像,即使我打电话
scannerView.stopCamera();
scannerView = null;
留下第一个片段.
注意:如果我们使用替换而不是添加,则另一个片段效果很好.但这会在片段的动画上产生问题.
最佳答案 经过激烈的调试,我找到了如何使所有工作:
>当片段可见/正在使用时,以编程方式创建并添加ZXingScannerView的布局,启动相机并预览;
>当片段不可见/使用时,从布局中删除ZXingScannerView;
>在某些Android版本(如5.01)上,请注意不要多次调用startCamera,否则在重新启动应用程序之前,您将无法再打开它.这里的错误是由死线程异常引起的.
希望已经足够明确和有帮助.