4

UIImagePickerController と cameraOverlayView がありますが、ユーザーが写真を撮ると、cameraOverlay ビューは「プレビュー/写真の使用/写真の再撮影」ビューに残ります。

最初のカメラ ビューだけに cameraOverlayView を定義する方法はありますか?

4

2 に答える 2

7

誰かが必要な場合は、将来の参考のためにここに投稿してください。

私は同じ問題を抱えていました.1日の調査の後、多くの試行錯誤を重ねた結果、画像プレビューから cameraOverlayView を削除する方法を見つけました。

写真を撮ると、「_UIImagePickerControllerUserDidCaptureItem」がトリガーされます。幸いなことに、クロージャーを使用してオブザーバーを作成することで、これを利用できます。クロージャー内で cameraOverlayView を nil に設定できるため、プレビューに入る前にカスタム ビューを削除できます。

これは、Swift 3 を使用する Xcode バージョン 8.1 (8B62) で機能します。

必要に応じて利用できるコード スニペットを追加しました。

NotificationCenter.default.addObserver(forName: NSNotification.Name(rawValue: "_UIImagePickerControllerUserDidCaptureItem"), object:nil, queue:nil, using: { note in
        self.imagePicker.cameraOverlayView = nil
})
于 2016-12-07T13:14:26.397 に答える