我正在使用Linea Pro 5和iPod Touch 5。 我在VS 2012下用C#开发了Xamarin下的iOS应用程序。
我的情况是这样的: 我的iOS App中有屏幕A和屏幕B. 在屏幕A中,我想允许用户扫描条形码,但当他移动到屏幕B时,我想禁用扫描仪。 这意味着,我希望选项只在一个屏幕上扫描(屏幕A)。
这是我做的: 我的Linea设备被声明为变量' lineaDevice'类型" Linea"。 我尝试在屏幕A中进行操作(当屏幕加载时): lineaDevice.Connect(); 并在屏幕B中(当屏幕加载时): lineaDevice.Disconnect();
这是工作,扫描仪在屏幕B中不起作用(红灯甚至没有打开),但是,这种方法的问题是每次调用lineaDevice.Connect()之后; ,只有第二次点击Linea设备的物理按钮,实际上会打开设备(及其红灯)进行扫描。这意味着,当用户移回屏幕A时,他必须在物理按钮上单击2次才能开始扫描。
我希望它永远是#34;顺利"扫描,第一次。
请告诉我任何想法"禁用" Linea在其他屏幕上。这意味着,当点击物理Linea按钮时,其他屏幕中不会发生任何事情,但是当用户返回到屏幕A(必须连接Linea)时,它仍将保持连接状态。
提前致谢!
答案 0 :(得分:2)
<强> setScanButtonMode 强>
设置Linea的扫描按钮模式。 此设置不是持久性的,最好在连接时进行配置。
Syntax
-(void)setScanButtonMode:(int)mode;
参数模式
BUTTON_DISABLED - Linea's button will become inactive
BUTTON_ENABLED - Linea's button will triger barcode scan when pressed
返回值
NSPortTimeoutException - if there is no connection to Linea
NSInvalidArgumentException if some of the input parameters are wrong
希望,这会对你有帮助。