首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linea扫描条形码问题

Linea扫描条形码问题
EN

Stack Overflow用户
提问于 2016-05-05 13:39:07
回答 1查看 501关注 0票数 1

在基于swift的应用程序中,我必须使用设备摄像头以及LinePro5 (LP5)外部条形码扫描器来实现条形码扫描。在应用程序中,必须检查iPhone与LinePro5 ( LP5 )设备的连接状态,如果iPhone未连接LP5,则它必须打开iPhone摄像头,否则它将使用LP5进行扫描。我必须对任何UIButton执行的扫描都在应用程序屏幕上。

我的问题是,当我调用connect()方法时,"func connectionState( Int32)“方法调用和iPhone与LP5的连接状态从Connecting更改为Connected,然后在我能够使用LP5扫描之后,但当我执行扫描另一个条形码时,LP5没有扫描,相机打开。此外,当我扫描wring条形码,这是不期望的,然后重新扫描后,设备相机打开。这意味着连接状态以某种方式发生了变化。但每次“函数状态(connectionState:Int32)”都不会调用。

谁能告诉我如何在每次扫描操作前检查LP5设备的连接状态?或者告诉我上述问题的正确解决方案。

EN

回答 1

Stack Overflow用户

发布于 2018-05-09 02:54:52

选项1:在调用类中维护一个变量,该变量保存linea设备的状态,

代码语言:javascript
复制
var lineaProState;

在,connectionState(_ state: Int32)方法中为此变量赋值

代码语言:javascript
复制
lineaProState = state;

然后,在扫描商品/条形码之前,检查状态变量:

代码语言:javascript
复制
if(lineaProState==0)
                {
                    //disconnected...
                    //call the lib.conncet() method
                    lib.connect()
                }
                else if(lineaProState==1)
                {
                    //connecting...wait for connect to finish
                }
                else if(lineaProState==2)
                {
                    //connected..Proceed with scanning
                }

Option2:是否在每次尝试扫描新条形码时从库中调用lib.connect()方法?这反过来将调用connectionState(_ state: Int32)方法,您可以检查设备状态,看看它是否已连接。

这将执行trick.Cheers!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37043203

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档