close

相信學 iOS 的我們
一定都會遇到這個問題吧?
Thread 1: signal SIGABRT

 

遇到這個問題我用了好多天的時間解決
爬文爬了許久才發現這一切的玄機呀!!!

 

這是我第一次遇到的情況

 

其實遇到了也不用緊張
這個錯誤是因為在運行時有個地方死掉了
但 xcode 只顯示最上層給我們看
卻沒和我們說實際的錯誤點在哪

 

爬文了一下後
知道了這大多是 stroyboard 的問題
但是 stroyboard 裡的 UI 那麼多
怎麼知道是哪一個呢?

 

這個時候可以看一下 consoles 可能會有資訊顯示

 

第二個方式可以試著增加中斷點
方法如下

我們這時用的是 Exception Breakpoint
當然在不同情況可以使用的中斷點也不一樣
之後有遇到再與大家分享

 

設定完中斷點之後再 run 一次
會發現有新的資訊跑出來

 

這裡就可以看到是哪一個地方錯誤了
原來魔鬼藏在我們的 TableViewContorller 裡
所以我就去看這個 ui 的 storybroad 是不是有哪裡出錯
ex:
 ui元件 對應的屬性有沒有存在
一個屬性是不是對應兩個 ui元件
屬性是不是改過名字
檢查設定哪裡有問題…等

 

這裡是個可怕的坑
因為大多都是自己粗心才導致這種問題的
想 debug 自然也不容易了
真的找不出來就…
砍掉重拉吧,哈哈哈
也許還比找很久找不到還省時省力 XD

 

不過這次我是用交叉比對的方法
複製一份出來
然後把 ui元件 一個一個的刪掉再 run 刪掉再 run
這樣就可以找出是哪個元件錯誤了

 

不知道看完這篇對大家有沒有幫助呢?
有所啟發的話就趕快開始 debug 吧 !!


p.s. 最後元兇是它



 


arrow
arrow
    全站熱搜

    顏澤偉 發表在 痞客邦 留言(0) 人氣()