2

我正在使用带有 iPod Touch 5 的 Linea Pro 5。我在 VS 2012 下用 C# 在 Xamarin 下开发 iOS 应用程序。

我的情况是这样的:我的 iOS 应用程序中有屏幕 A 和屏幕 B。在屏幕 A 中,我想允许用户扫描条形码,但是当他移动到屏幕 B 时,我想禁用扫描仪。意思是,我希望仅在一个屏幕(屏幕 A)中扫描的选项。

这是我所做的:我的 Linea 设备被声明为类类型“Linea”的变量“lineaDevice”。我尝试在屏幕 A 中做(当屏幕加载时): lineaDevice.Connect(); 在屏幕 B 中(屏幕正在加载时): lineaDevice.Disconnect();

它是工作,扫描仪在屏幕 B 中不起作用(红灯甚至没有打开),但是,这种方法的问题是每次调用 lineaDevice.Connect(); 后,只有第二次点击在 Linea 设备的物理按钮上,实际上会打开设备(及其红灯)进行扫描。这意味着,当用户回到屏幕 A 时,他必须在物理按钮上单击 2 次才能开始扫描。

我希望它在第一次时总是“顺利”扫描。

请让我知道在其他屏幕中“禁用”Linea 的任何想法。这意味着,当单击物理 Linea 按钮时,其他屏幕不会发生任何事情,但在用户返回屏幕 A(必须连接 Linea 的地方)的那一刻,它仍将保持连接。

提前致谢!

4

1 回答 1

3

设置扫描按钮模式

设置 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

希望对你有帮助。

于 2014-05-21T13:31:01.677 回答