Вопрос по iphone, objective-c – Метод экземпляра '-jsonValue' не найден (тип возвращаемого значения по умолчанию равен 'id')

1

У меня проблема в следующем заявлении.

<code> NSArray *feedsData = [strFeedsResponse JSONValue];
</code>
Какой типstrFeedsResponse? Немного улучшите свой вопрос. Ondrej Peterka
какую ошибку вы получите? Hector

Ваш Ответ

6   ответов
0

попробуй так ...

NSArray* latestentry = (NSDictionary*)[responseString JSONValue];
1

Причина ошибки заключается в том, что текущая версия SBJson, по-видимому, не содержит категорию NSString "NSString + SBJSON.h". упомянутый более ранним плакатом. Таким образом, вы можете легко написать свой собственный или просто использовать класс SBJsonParser напрямую («address» - это просто строка NSString, содержащая что-то вроде «24 Elm Street, Yourtown, New Mexico»):

NSString     *esc_addr       = [address stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString     *req            = [NSString stringWithFormat:@"http://maps.google.com/maps/api/geocode/json?sensor=false&address=%@", esc_addr];
NSString     *response       = [NSString stringWithContentsOfURL: [NSURL URLWithString: req] encoding: NSUTF8StringEncoding error: NULL];
SBJsonParser *parser         = [[SBJsonParser alloc] init];
NSDictionary *googleResponse = [parser objectWithString:response];

Ура!

1

strFeedsResponse is not ACTUALLY an instance of an NSString. Maybe it is null or it has been initiated with an incorrect value. You can add a breakpoint to your code to check the value that is stored in strFeedsResponse before you call JSONValue on it.

You have not correctly imported the JSON framework that you are using into your class. You need to add the JSON header to your class.

0
 NSArray *feedsData = [[strFeedsResponse JSONValue] mutableCopy];

@ Прадип, что к чему?
Или используйте эту строку также NSArray * feedsData = (NSArray *) [strFeedsResponse JSONValue];
та же проблема... Pradeep
2

strFeedsResponse является примеромNSString, Нет такого метода какJSONValue вNSString, Вам нужен NSStringcategory и добавитьJSONValue Метод есть.

Вы можете использовать, например,SBJson библиотекаhttps://github.com/stig/json-framework/, который содержит заголовок NSString + SBJson.h, который добавляетJSONValue метод для NSString.

Этот заголовок должен быть импортирован в исходный файл, где вы хотите использоватьJSONValue метод:

#import NSString+SBJSON.h

Подробнее о категориях, например, здесь:http://macdevelopertips.com/objective-c/objective-c-categories.html

0

JSONValue функция не найдена.
Пожалуйста, убедитесь, что вы включили заголовочные файлы json, где вы вызываете эту функцию.

Похожие вопросы