

下記のコードでsignal SIGABRTのエラーが出てしまいます。

_view controller1_

[code]

    @IBOutlet weak var image1: UIImageView!
    @IBOutlet weak var image2: UIImageView!
    
    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        let vc2 = segue.destination as! ViewController2
        vc2.image3 = self.image1.image
        vc2.image4 = self.image2.image
    }
    
[/code]

_view controller2 (vc2)_

[code]

    @IBOutlet weak var image21: UIImageView!
    @IBOutlet weak var image22: UIImageView!
    
    var image3: UIImage?
    var image4: UIImage?
    
    override func viewDidLoad() {
        super.viewDidLoad()
    
        self.image21.image = image3
        self.image22.image = image4
    }
    
[/code]


CC BY-SA 3.0
2016-11-27T08:51:47.733
30721
2017-02-01T09:35:30.420
2016-11-28T01:45:51.833
5519
19623
question
swift swift3
View遷移時に画像が渡せません。


提示いただいたコードに、問題点はありません。検証用に作成したiOSのプロジェクトに、そのまま記述しても、クラッシュすることなく、イメージの受け渡しができています。

「signal
SIGABRT」というエラーは、もっとも頻出度の高いエラーですが、「コード上は、とくに問題になる箇所が見つからない」というとき、Storyboard上の編集の不備が原因であることが、よくあります。Connectionが正しいか、実体のないConnectionが残っていないかを、徹底的にチェックしてください。Connectionを張った後に、`View`の名称を変えたりすると、編集の不備となることがあります。


CC BY-SA 3.0
2016-11-27T10:18:12.147
30723
2016-11-27T10:18:12.147
18540
30721
answer