我有一个帮助方法,用于设置视频输入和输出。在helper方法中我需要设置委托,但更喜欢在调用类中使用委托方法。我目前的代码行是:
[captureOutput setSampleBufferDelegate:self queue:queue];
如何将调用类MyAVViewController指定为委托?
谢谢!
答案 0 :(得分:1)
您需要拥有MyAVViewController的实例,您可以将其作为代理传递:
[captureOutput setSampleBufferDelegate:avViewController queue:queue];
您必须将avViewController作为参数传递给helper方法才能实现此目的:
- (void)helperMethodWithDelegate:(id<AVCaptureVideoDataOutputSampleBufferDelegate>)delegate
{
// do stuff
[captureOutput setSampleBufferDelegate:delegate queue:queue];
}
确保您的avViewController(或您选择传入的任何内容)符合AVCaptureVideoDataOutputSampleBufferDelegate协议。