如何KVO观察AVCaptureDevice的whiteBalanceMode属性?

问题描述 投票:0回答:1

Apple称whiteBalanceModeexposureModeAVCaptureDevice属性是可观察到的KVO。

这是我在Objective-C工作了十年之后第一次在Swift编程。

在Swift中,KVO似乎更复杂。

我试过这个:

var kvoWhiteBalanceObserving : NSKeyValueObservation?
@objc var capDevice : AVCaptureDevice?

稍后的...

capDevice = captureDevice

self.kvoWhiteBalanceObserving = observe(\.capDevice.whiteBalanceMode, options: [.old, .new]) { object, change in
        print(object.whiteBalanceMode)
}

Xcode指向\.说:

如果没有更多的上下文,表达的类型是不明确的

如何在快速4中使用KVO?

ios swift4 key-value-observing
1个回答
2
投票

像这样观察:

self.kvoWhiteBalanceObserving = capDevice?.observe(\.whiteBalanceMode, options: [.old, .new]) { object, change in
    print(object.whiteBalanceMode)
}
© www.soinside.com 2019 - 2024. All rights reserved.