前提・実現したいこと
imageView を押したときに画面の遷移とそのimageview の画像が遷移先の画面に反映されるようにしたいのですが、以下のようなエラーが出てしまいます。
一度試してみたコードをもとに作成したのですが、元のコードは正常に動くのますが、新しくプロジェクトを作成してこれを元に作ってみたのですがうまくいかない状態です。
エラーメッセージ Thread 1: "[<growanimal.growAniViewController 0x7f7f4fd1a7c0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key mainAni."
該当のソースコード
import UIKit import SpriteKit class mainViewController: UIViewController { @IBOutlet weak var mainAni: UIImageView! var timer: Timer!//タイマー // タイマー用の時間のための変数 var timer_sec: Float = 0 //画像データ let image1:UIImage = UIImage(named: "1.png")! let image2:UIImage = UIImage(named: "2.png")! let image3:UIImage = UIImage(named: "3.png")! let image4:UIImage = UIImage(named: "4.png")! let image5:UIImage = UIImage(named: "5.png")! var images: [UIImage] = [] override func viewDidLoad() { super.viewDidLoad() images = [image1, image2, image3, image4,image5] mainAni.isUserInteractionEnabled = true mainAni.image = image1 } @IBAction func selectAni(_ sender: Any) { self.performSegue(withIdentifier: "Segue1", sender: nil) } @objc func tapped(_ sender: UITapGestureRecognizer){ self.performSegue(withIdentifier: "Segue1", sender: nil) } var index = 0 var tappedImage :UIImage? //時間の経過とともに行う処理 @objc func updateTimer(_ timer: Timer) { self.timer_sec += 2 index += 1 if index >= images.count{ index = 0 } mainAni.image = images[index] } //ボタン系 @IBOutlet weak var nextButton: UIButton! @IBAction func nextButton(_ sender: Any) { index += 1 if index >= images.count{ index = 0 } mainAni.image = images[index] } @IBOutlet weak var backButton: UIButton! @IBAction func backButton(_ sender: Any) { index -= 1 if index < 0{ index = 2 } mainAni.image = images[index] } //選択した動物を次の画面に出す override func prepare(for segue: UIStoryboardSegue, sender: Any?) { // segueから遷移先のResultViewControllerを取得する if segue.identifier == "Segue1"{ let displayPhoto:growAniViewController = segue.destination as! growAniViewController // 遷移先のResultViewControllerで宣言しているx, yに値を代入して渡す displayPhoto.selectedAni = self.mainAni.image! } } }
試したこと
同じ動作のコードを元に確認したのですが、未熟な私にはわかりませんでした。
補足情報(FW/ツールのバージョンなど)
swift
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。