これはなぜ機能しないのですか?Swift - CIDetectorのサブクラスの便利なイニシャライザが動作しません
import CoreImage
class RectDetector: CIDetector {
convenience init?(aspectRatio: Float) {
let options: [String : Any] = [CIDetectorAccuracy : CIDetectorAccuracyHigh,
CIDetectorAspectRatio : NSNumber(value: aspectRatio)]
self.init(ofType: CIDetectorTypeRectangle, context: nil, options: options)
}
}
私はエラー"メンバーinit(aspectRatio:)
へのあいまいな参照" を取得しています。私はこのようなアスペクト比のデフォルト値を追加しようと
は:
import CoreImage
class RectDetector: CIDetector {
convenience init?(aspectRatio: Float = 1.0) {
let options: [String : Any] = [CIDetectorAccuracy : CIDetectorAccuracyHigh,
CIDetectorAspectRatio : NSNumber(value: aspectRatio)]
self.init(ofType: CIDetectorTypeRectangle, context: nil, options: options)
}
}
が、私はエラーを取得する「それを呼び出すために渡される引数は、引数を取りません」。 これはバグですか?なぜ私はCIDetector
を既存のイニシャライザに連鎖しているカスタムコンビネーションイニシャライザでサブクラス化できないのですか?
P.S.私はXcode 8.2(8C38)を使用しています