Mat*_* S. 4 macos cocoa scanning ikscannerdeviceview
如何使用IKScannerDeviceView扫描应用程序内的文档?
我尝试添加一个IKScannerDeviceView进入我的观点通过IB及其委托设置为我的应用程序委托(它实现IKScannerDeviceViewDelegate),但是当我运行的应用程序,我得到一个视图使用按钮Show Details和Scan,只有Show Details被激活了,当我点击它没有什么发生.
我插入了扫描仪,我可以扫描图像捕获,但不能通过我的应用程序扫描.
有人有关于如何使用它的好教程吗?
我终于弄明白了如何使用IKScannerDeviceView.
您的类必须实现以下委托:
IKScannerDeviceViewDelegate, ICScannerDeviceDelegate, ICDeviceBrowserDelegate
Run Code Online (Sandbox Code Playgroud)
并且您需要在窗口中安装IKScannerDeviceView,并将其委托设置为实现的类 IKScannerDeviceViewDelegate
要开始使用它,您必须创建ICDeviceBrowser如下:
ICDeviceBrowser *mDeviceBrowser = [[ICDeviceBrowser alloc] init];
mDeviceBrowser.delegate = self;
mDeviceBrowser.browsedDeviceTypeMask = ICDeviceLocationTypeMaskLocal|ICDeviceLocationTypeMaskRemote|ICDeviceTypeMaskScanner;
[mDeviceBrowser start];
Run Code Online (Sandbox Code Playgroud)
然后以类似于下面的方式实现委托方法:
- (void)scannerDeviceDidBecomeAvailable:(ICScannerDevice*)scanner;
{
[scanner requestOpenSession];
}
- (void)deviceBrowser:(ICDeviceBrowser*)browser didAddDevice:(ICDevice*)addedDevice moreComing:(BOOL)moreComing
{
if ( (addedDevice.type & ICDeviceTypeMaskScanner) == ICDeviceTypeScanner )
{
[scannerView setScannerDevice:(ICScannerDevice*)addedDevice];
}
}
-(void)didRemoveDevice:(ICDevice*)removedDevice
{
[removedDevice requestCloseSession];
}
Run Code Online (Sandbox Code Playgroud)
如果一切正常,您的IKScannerDeviceView将能够与您的扫描仪进行交互!
| 归档时间: |
|
| 查看次数: |
1214 次 |
| 最近记录: |