Символы Drawing Unicode на iPhone

Вам нужно использовать анализатор JSON. вот отредактированный код

+ (NSDictionary *)downloadJSON
{

NSDictionary *json_string;
NSString *dataURL = [NSString stringWithFormat:@"%@", JSON_CATEGORY_DATA_URL_STRING];
NSLog(@"%@",dataURL);
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:dataURL]];    
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

json_string = [[[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding]autorelease];
//JSONValue is a function that will return the appropriate object like dictionary or array depending on your json string.
NSDictionary *json_dict = [json_string JSONValue];
NSLog(@"json_dict\n%@",json_dict);
    NSLog(@"json_string\n%@",json_string);

return json_dict;
}

это должен быть код для получения NSDictionary. но ваша строка json является массивом, поэтому вместо этого используйте.

+ (NSArray *)downloadJSON
{

NSDictionary *json_string;
NSString *dataURL = [NSString stringWithFormat:@"%@", JSON_CATEGORY_DATA_URL_STRING];
NSLog(@"%@",dataURL);
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:dataURL]];    
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

json_string = [[[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding]autorelease];
NSArray *json_dict = [json_string JSONValue];
NSLog(@"json_dict\n%@",json_dict);
    NSLog(@"json_string\n%@",json_string);

return json_dict;
}

Редактировать: вам нужно использовать JSON.framework для вызова метода JSONValue.
также вам нужно вернуть json_dict вместо json_string, поскольку json_string имеет тип NSString, а не NSDictionary или NSArray.
и не выпускайте его автоматически, так как это ваша переменная класса

8
задан hkatz 25 May 2009 в 13:34
поделиться

2 ответа

Я предположил, что исключение CGFontGetGlyphsForUnichars
было оплошностью, а не преднамеренным шагом, однако я не
ставя на это ферму. Поэтому вместо этого я использую

[NSString drawAtPoint: withFont:]; (в UIStringDrawing.h)

и

[NSString sizeWithFont];

Это также дает преимущество выполнения достойной замены
для символов, отсутствующих в вашем шрифте, то, чего не может
CGContextShowGlyphs .

3
ответ дан 6 December 2019 в 00:08
поделиться

Я сделал довольно подходящую замену частной функции, об этом читайте здесь: http://gotits.codemelody.com/2009/07/a-replacement-for-cgfontgetglyphsforunichars/

0
ответ дан 6 December 2019 в 00:08
поделиться
Другие вопросы по тегам:

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