0

iOS6プロジェクトでEGOTableViewPullRefreshを使用しようとしていますが、ビルド時にリンクの問題を回避できません。プロジェクトにソースを含めた後、EGORefreshTableHeaderView.mに-fno-objc-arcフラグを追加し、ソースに必要なすべての変更を加えて、ARCでビルドできるようにします(「リリース」の削除など)。次のリンクの問題:

 Undefined symbols for architecture i386:
  "_CATransform3DIdentity", referenced from:
      -[EGORefreshTableHeaderView setState:] in EGORefreshTableHeaderView.o
  "_CATransform3DMakeRotation", referenced from:
      -[EGORefreshTableHeaderView setState:] in EGORefreshTableHeaderView.o
  "_OBJC_CLASS_$_CALayer", referenced from:
      objc-class-ref in EGORefreshTableHeaderView.o
  "_OBJC_CLASS_$_CATransaction", referenced from:
      objc-class-ref in EGORefreshTableHeaderView.o
  "_kCAGravityResizeAspect", referenced from:
      -[EGORefreshTableHeaderView initWithFrame:arrowImageName:textColor:] in EGORefreshTableHeaderView.o
  "_kCATransactionDisableActions", referenced from:
      -[EGORefreshTableHeaderView setState:] in EGORefreshTableHeaderView.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

EGOTableViewPullRefreshを使用してこの問題に遭遇した人はいますか?

ありがとう!

4

2 に答える 2

7

ここに画像の説明を入力してくださいプルトゥリフレッシュで正しくリンクするには、QuartzCoreライブラリフレームワークを含める必要があります。

これは、ターゲットページに移動し(Xcodeレイアウトの上部にある左側の列のターゲットアイコンをクリック)、[ビルドフェーズ]タブを選択し、[バイナリとライブラリのリンク]をクリックして開き、[+]ボタンをクリックすることで実現されます。 、「QuartzCore」と入力し始め、QuartzCoreフレームワークを選択します。

これで、これらのリンクエラーが修正されるはずです。

于 2012-09-27T03:45:05.473 に答える
2

QuartzCoreフレームワークが追加されていることを確認してください。

于 2012-09-27T03:45:49.940 に答える