Редактировать: 10-9-10
Я думаю, что приложение падает, когда библиотека JSON пытается проанализировать
[NSString stringWithFormat:@"%d weeks",[components week]];
Как мне отформатировать его, чтобы JSON мог его проанализировать?
Вот строка кода JSON
NSString *attachmentStr = [jsonWriter stringWithObject:attachment];
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
kAppId, @"api_key",
@"Share on Facebook", @"user_message_prompt",
actionLinksStr, @"action_links",
attachmentStr, @"attachment",
nil];
Кто-нибудь может подсказать мне, как это сделать?Я легко могу разместить статический текст в блоке кода ниже, но я не могу интегрировать NSString
с динамическими данными, он не отображается в разделе Fb post-attachment.
NSDictionary *attachment = [NSDictionary dictionaryWithObjectsAndKeys:
@"Testing", @"name",
@"testing2", @"caption",
[NSString stringWithFormat:@"%d weeks",[components week]], @"description"//Xcode says components undeclared
//highscore, @"description", //here's the problem, highscore is the NSString variable.
@"http://testing.com/", @"href", nil];
Обновление:проблема в том, что я использую строку из временного интервала с разницей в 2 недели, и результат равен [components week]
, а затем xcode сообщает мне, что компоненты - это необъявленная переменная
[NSString stringWithFormat:@"%d weeks",[components week]]
блок кода даты, из которого я получаю приведенную выше строку:
NSString *dateStr = @"20100716";
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyyMMdd"];
NSDate *startDate = [dateFormat dateFromString:dateStr];
NSDate *endDate = [NSDate date];
NSCalendar *gregorian = [[NSCalendar alloc]
initWithCalendarIdentifier:NSGregorianCalendar];
NSUInteger unitFlags = NSWeekCalendarUnit | NSDayCalendarUnit;
NSDateComponents *components = [gregorian components:unitFlags
fromDate:startDate
toDate:endDate options:0];
NSInteger weeks = [components week];
NSInteger days = [components day];