質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

0回答

911閲覧

画像を保存した変数の中身を撮影画像に変更したいが変化しない

maru.wk

総合スコア30

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2018/01/19 08:29

あらかじめ画像の入った変数takedphotoを用意しておき,その変数に撮影した画像stillImageをしまいたいのですが,変数の中身がデフォルトの画像から変化しません。
コードのどこに間違いがあるのかわからず困惑しております。
どなたかよろしくお願いいたします。

swift

1import UIKit 2import Foundation 3import AVFoundation 4 5class CameraViewController: UIViewController, AVCaptureVideoDataOutputSampleBufferDelegate,UIGestureRecognizerDelegate { 6 7 //UI部品の関連付け 8 @IBOutlet weak var SSLabel: UILabel! 9 @IBOutlet weak var ssSlider: UISlider! 10 @IBOutlet weak var previewView: UIView! 11 @IBOutlet weak var photoView: UIImageView! 12 13 //シャッタースピードごとのパラメータ値を判断するための変数 14 var param = 0 15 //画像受け渡し用の変数 16 var takedphoto: UIImage = #imageLiteral(resourceName: "IMG_4776") 17..... 18// シャッターボタンで実行する 19 @IBAction func takePhoto(_ sender: Any) { 20 let captureSetting = AVCapturePhotoSettings() 21 captureSetting.flashMode = .off 22 captureSetting.isAutoStillImageStabilizationEnabled = true 23 captureSetting.isHighResolutionPhotoEnabled = false 24 // キャプチャのイメージ処理はデリゲートに任せる 25 photoOutput.capturePhoto(with: captureSetting, delegate: self) 26 27 } 28 29... 30}

↓stillImageはExtensionの中です。

swift

1//デリゲート部分を拡張する 2extension CameraViewController:AVCapturePhotoCaptureDelegate{ 3 // 映像をキャプチャする 4 func capture(_ captureOutput: AVCapturePhotoOutput, 5 didFinishProcessingPhotoSampleBuffer photoSampleBuffer: CMSampleBuffer?, 6 previewPhotoSampleBuffer: CMSampleBuffer?, 7 resolvedSettings: AVCaptureResolvedPhotoSettings, 8 bracketSettings: AVCaptureBracketedStillImageSettings?, 9 error: Error?) { 10 11 12 //バッファからjpegのデータを取り出す 13 let photoData = AVCapturePhotoOutput.jpegPhotoDataRepresentation(forJPEGSampleBuffer: photoSampleBuffer!, previewPhotoSampleBuffer: previewPhotoSampleBuffer) 14 //photoDataがnil出ない時UIImageに変換する 15 if let data = photoData { 16 if let stillImage = UIImage(data: data) { 17 //アルバムに追加する 18 UIImageWriteToSavedPhotosAlbum(stillImage, self, nil, nil) 19 //画像の向きの修正 20 let pickedImage = stillImage.fixedOrientation() 21 photoView.image = pickedImage 22 23 //画像選択とFeuを出すためのアラートを作成 24 let alert = UIAlertController(title: nil, message: "この画像を使用しますか?", preferredStyle: .alert) 25 //アラートにボタンをつける 26 alert.addAction(UIAlertAction(title: "YES", style: .default, handler: { action in 27 //画面をFeu算出用の画面に切り替える 28 let storyboard: UIStoryboard = self.storyboard! 29 let nextView = storyboard.instantiateViewController(withIdentifier: "next") as! NextViewController 30 self.present(nextView, animated: true, completion: nil) 31 })) 32 alert.addAction(UIAlertAction(title: "NO", style: .cancel, handler: { action in 33 34 })) 35 //アラートを表示 36 self.present(alert, animated: true, completion: nil) 37 38 39 40 } 41 } 42 } 43} 44

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問