2

に変換した後Swift 3.0、何らかの理由でこのエラーが発生します

'(String, CIContext?, [String : Any]?) -> CIDetector' は '(String, CIContext?, [String : Any]?) -> CIDetector?' に変換できません。

//When initiating 
let detector: CIDetector? = CIDetector(ofType: CIDetectorTypeFace, context: nil, options: [CIDetectorAccuracy: CIDetectorAccuracyHigh])

アーカイブしようとするとエラーが発生します。実行すると、すべて正常に動作します。

4

2 に答える 2

0

これは、明示的な型注釈の無意味さの良い例です。

型注釈を削除し、コンパイラに型を推測させます

let detector = CIDetector(ofType: CIDetectorTypeFace, context: nil, options: [CIDetectorAccuracy: CIDetectorAccuracyHigh])

エラー メッセージには、戻り値の型がオプションではないことが示されています。

于 2016-11-29T22:10:26.293 に答える