2010-07-24 61 views
0

我有以下代碼:iPhone CATextLayer(QuartzCore框架)連結的問題

CATextLayer *test = [CATextLayer layer]; 
test.string = summary; 
test.wrapped = YES; 
//test.truncationMode = kCATruncationEnd; 
//test.alignmentMode = kCAAlignmentJustified; 
test.frame = s; 
[test drawInContext:context]; 

我導入針對它的框架和鏈接,但是當它連接我得到以下錯誤:

ld: warning: in /Users/ryansully/Desktop/AppName/Project/1/AppName/QuartzCore.framework/QuartzCore, missing required architecture i386 in file Undefined symbols:
"_OBJC_CLASS_$_CATextLayer", referenced from: objc-class-ref-to-CATextLayer in StoriesCell.o ld: symbol(s) not found collect2: ld returned 1 exit status

這是一個iOS項目。我在XCode 3.2.3和XCode 4 DP2中都得到這個錯誤。

+0

你確定你正在導入QuartzCore.framework,並且你的代碼中有'#import ? – jtbandes 2010-07-24 17:58:14

+0

是的,我100%確定。我通過IRC每次查看了多次:P – 2010-07-24 18:00:27

+0

嘗試創建一個新項目並將其放入? – jtbandes 2010-07-24 18:25:51

回答

1

結果XCode 4仍然有問題,無法正確添加框架。這個問題通過在XCode 3中打開項目,刪除+讀取框架,然後編譯來解決。

2

我有同樣的問題。我通過在項目屬性中的某處添加框架來解決它。

在項目屬性中(位於XCode界面左側的Project Navigator中,單擊該項目):目標/ [您的項目名稱]/Build Phases/Link Binary With Librairies。

然後添加QuartzCore.h(在列表底部有一個「+」按鈕)。

+0

+1,用於實際提供有關如何添加QuartzFramework的步驟。我知道問題是什麼,但不知道如何添加框架本身,所以感謝! :) – javatarz 2013-08-19 14:07:39