0

私はiOSアプリケーションを開発しています。私はXcode 4.3.2andを使用しSBJSONています。すべての JSON クラスをプロジェクトにインポートしましたが、正常にコンパイルされましたが、プロジェクト内を移動すると、次のようなクラッシュが発生しました。-[__NSCFDictionary JSONRepresentation]: unrecognized selector sent to instance

そして私のコードでは、私はこのようにやっています: NSString *jsonString = [dic JSONRepresentation]; dic はNSDictionnary.

ご回答有難うございます

4

2 に答える 2

0

次のコードを試してください。ここで、responseString は、パーサーから受け取った応答文字列です。

SBJSON *json = [SBJSON new];    
NSMutableDictionary *jsonDictionary = (NSMutableDictionary*) [json objectWithString:responseString error:nil];
于 2012-05-03T08:06:53.887 に答える
0

JSONRepresentation は Apple の NSDictionary クラスの一部ではありません。

これは、JSON Api に含まれる非常に便利なカテゴリです。

=>この JSON Apiを使用していますか?

=> JSON Api ヘッダー ファイルを正しくインポートしていますか?

=>コードを見ると、JSONRepresentationカテゴリは次のように宣言されています:

@interface NSDictionary (NSDictionary_SBJsonWriting)
/// Returns a string containing the receiver encoded in JSON.
- (NSString *)JSONRepresentation;
@end

.m ファイル内の対応するコードで?

編集 :

静的ライブラリを作成し、その中で JSON Api (または他の API) を使用している場合は、ライブラリのビルド設定と呼び出し元プロジェクトの設定を変更する必要があります。

  • ライブラリのビルド設定で、「その他のリンカー フラグ」の行を確認してください。値は次のとおりです。「-ObjC」

  • 呼び出し元プロジェクトのビルド設定で、「その他のリンカー フラグ」の値は「-all_load」にする必要があります。

于 2012-05-03T08:28:43.320 に答える