當我們興高采烈地採用最新的Xcode 4.5,搭配最新的iOS 6 SDK,建立新專案開始開發時,一旦在iOS 5的機器上執行,卻馬上crash,死前遺言如下:
從遺言我們得知問題出在NSLayoutConstraint上,這是因為它是在iOS 6才冒出的類別
NS_CLASS_AVAILABLE_IOS(6_0)
@interface NSLayoutConstraint : NSObject
讓我們回頭看看專案的storyboard,我們可發現在View下多了很多設定排版的Constraint。
切換到storyboard的File Inspector頁面,我們可發現Use Autolayout被勾選。
Autolayout是iOS 6才加入的排版機制,利用剛剛畫面上看到的Constraint,排列畫面上的元件。 為了能相容iOS 5以下的版本,我們只要取消此勾選,移除Autolayout,即可解決App crash的問題。
沒有留言:
張貼留言