0

AV Foundation フレームワークを使用しています。「AVCaptureDeviceInput」オブジェクトに対して「deviceInputWithDevice」のメソッド呼び出しを実行しようとしています。

問題は、メソッド呼び出しに「エラー」という名前の「エラー」パラメーターが含まれており、xcode で次の警告が引き続き表示されることです。未使用の識別子「エラー」の使用

私の AV Foundation コードはすべて、View Controller の ViewDidLoad メソッドの実装にあります。ここにあります:

    AVCaptureSession *session = [[AVCaptureSession alloc]init];

    session.sessionPreset = AVCaptureSessionPresetHigh;

    AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];

    AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:error];

    [session addInput:input];

「エラー」パラメーターに対して宣言されていない識別子の警告が表示され続ける理由がわかりません。

どんな助けでも大歓迎です。

4

1 に答える 1

2

error使用しようとしている変数を宣言する必要があります。

NSError *error = nil;
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];

また、メソッドに渡すときに&beforeが必要であることに注意してください。errorそしてもちろん、それをチェックする必要があります:

if (input) {
    // it succeeded, do something
} else {
    NSLog(@"Error trying to call deviceInputWithDevice: %@", error);
}
于 2014-02-17T23:02:34.127 に答える