LoginSignup
25
16

More than 5 years have passed since last update.

Thread 1: signal SIGABRTと出てしまう理由が判明した

Posted at

概要

コードは合ってるのになぜかThread 1: signal SIGABRTと出てしまう

これが
スクリーンショット 2018-10-16 18.09.42.png

なぜかこうなる

スクリーンショット 2018-10-16 18.15.39.png

原因

原因は間違ってコード上でした関連付けをコード上でしか削除してなかった事だった

つまり本来は

class ViewController: UIViewController {

    override func viewDidLoad() {
        省略
        }
    @IBAction func tapTweetBtn(_ sender: UIButton) {
    省略

とOutletしなきゃいけないのに

class ViewController: UIViewController {
 @IBOutlet weak var tapTweetBtn: UIButton!

    override func viewDidLoad() {

と間違えてしてしまい

 @IBOutlet weak var tapTweetBtn: UIButton!

をコード上から削除した

だけどこれだけじゃダメなのです

なぜならコード上で消してもシステム上での関連付けはそのままされているので
シミュレータが必死にこの関連付けのコードを探してしまい止まってしまう
というカラクリでした

改善策

この赤丸の所のシステム上の関連付けを切ればOK

スクリーンショット 2018-10-16 18.30.59.png

スクリーンショット 2018-10-16 18.35.33.png

シミュレータを起動させると…

スクリーンショット 2018-10-16 18.38.25.png

成功しました

わーい

まとめ

間違えて関連付けしてしまった場合は
コード上だけでなくシステム上のOutletも削除する

終わり

25
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
25
16