ようやく IKScannerDeviceView の使い方を理解できました。
クラスは次のデリゲートを実装する必要があります。
IKScannerDeviceViewDelegate, ICScannerDeviceDelegate, ICDeviceBrowserDelegate
ウィンドウに IKScannerDeviceView を配置し、デリゲートを実装するクラスに設定する必要があります。IKScannerDeviceViewDelegate
ICDeviceBrowser
使用を開始するには、次のようなものを作成する必要があります。
ICDeviceBrowser *mDeviceBrowser = [[ICDeviceBrowser alloc] init];
mDeviceBrowser.delegate = self;
mDeviceBrowser.browsedDeviceTypeMask = ICDeviceLocationTypeMaskLocal|ICDeviceLocationTypeMaskRemote|ICDeviceTypeMaskScanner;
[mDeviceBrowser start];
次に、次のような方法でデリゲート メソッドを実装します。
- (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];
}
その後、すべてがうまくいけば、IKScannerDeviceView はスキャナーとやり取りできるようになります!