2010-09-16 40 views
1

我創建了運行正常使用iOS 3.2或以上的設備,但在老版本中,它與錯誤IPhone SDK - CATextLayer崩潰在<3.2

dyld的崩潰OS的應用程序:未找到符號:_OBJC_CLASS_ $ _CATextLayer引用的來自:/var/mobile/Applications/70D5888B-B531-484F-997D-776B432FFA52/Test.app/Test預計於:/System/Library/Frameworks/QuartzCore.framework/QuartzCore

我意識到這是因爲CATextLayer在3.2之前是不可用的,但有人知道我可以做些什麼來使它仍然在舊版本中運行?我已經試過檢查版本,只有在3.2+以上時才調用圖層,但是當它在框架中加載而不是在實際嘗試更改圖層時似乎發生崩潰。

謝謝。

回答

1

弱連接框架,然後在代碼中使用它之前檢查該類是否存在。這裏有很多關於如何做到這一點的問題。

1

按照我在this answer中描述的過程,除了UIKit之外,只有弱鏈接QuartzCore框架。提問者在那裏有同樣的問題,只是在不同的框架中爲不同的符號。