3

私はios開発にかなり慣れていません-私のiphoneプロジェクトでsdwebimageを使用しようとしています。必要に応じてすべての基本設定を完了したと思います。しかし、ビルドすると、次のエラーが表示されます: No such file file or directory near this line:

#import "UIImageView+WebCache.h"
  • はい、ターゲットの依存関係を追加しました
  • Link Binary With Libraries に libSDWebImage.a を追加しました
  • その他のリンカー フラグに -all_load -ObjC があります
  • -force_load ${BUILT_PRODUCTS_DIR}/libSDWebImage.a (64bit mac) も試しました
  • 私の使用ヘッダー検索パスは次のとおりです: $(BUILT_PRODUCTS_DIR)
  • プロジェクトをクリーンアップして再構築しましたが、役に立ちませんでした。

ビルドが失敗し続けます。繰り返しますが、#import "UI と入力して "ctrl+space" を押すと、XCode4 のコード補完が "解決" されます。これは、lib が xcode に表示されることを意味します。

4

7 に答える 7

16

必要なヘッダー ファイルをビルド パスに追加するには、次の手順を実行します。

  1. プロジェクトファイルを選択
  2. ターゲットを選択
  3. ビルド設定を選択
  4. 検索ボックスに「ヘッダー検索パス」と入力します
  5. リリースの場合は追加"$(SOURCE_ROOT)/SDWebImage"します(引用符付き)。

これは、このようにインポートするときに機能します#import <SDWebImage/UIImageView+WebCache.h>

于 2012-05-22T03:51:15.527 に答える
8

SDWebImageも使用します。
私の経験では、リンカーフラグなどは何もしませんでし
た。プロジェクトにクラスを追加し、クラスのヘッダーに「UIImageView + WebCache.h」を次のようにインポートするだけです。

#import "UIImageView+WebCache.h"

UIImageView オブジェクトで使用する場合は、メソッドを使用するだけです

setImageWithURL:placeholderImage:

詳細については、github を参照してください。

于 2012-01-28T05:34:40.173 に答える
3

私はちょうどこの問題に遭遇し、それを解決しました。

問題は、SDWebImage xcodeプロジェクトをプロジェクトに「ドラッグ」すると、Xcodeは必要なファイルを指す参照のみを作成することです。あなたがデバッグモードにいるとき、それは大丈夫です、それはそれらのファイルを見つける場所を知っています。ただし、アーカイブする(すべてを自己完結型にするためにパックする)場合、検索パスからは見つかりませんでした。

$(BUILT_PRODUCTS_DIR)を検索パスに追加しましたが、ダウンロードした実際のファイルが$(BUILT_PRODUCTS_DIR)に物理的に配置されていない場合、Xcodeはそれらを検出しません。SDWebImageファイルがまだダウンロードフォルダに残っていたので、これは私にとって問題でした。

あなたがしたいことは:

1.SDWebImageフォルダを誤って削除しない場所に移動します。これを行うと、SDWebImageプロジェクトファイルは物理的な場所が移動されるため、赤になります。そして、Xcodeでその参照を削除できなかったことが配線されています。最終的には、そのファイルを再度追加します(移動した場所から選択します)。プロジェクトナビゲーターに赤いSDWebImage.xcodeprojが表示され、削除できなくなります。非常に煩わしいですが、何の影響もありません。2. SDWebImageのものを移動する場所が$(BUILT_PRODUCTS_DIR)内にない場合は、$(BUILT_PRODUCTS_DIR)内に移動するか、私と同じように、[ターゲット]->[ビルド設定]->[検索パス]->にパスを追加します。ユーザーヘッダーの検索パス。

アーカイブすれば、これで動作するはずです。

于 2012-03-15T08:22:35.577 に答える
1
于 2012-02-15T06:58:37.330 に答える