опубликовать высокий балл на Facebook, используя график API - PullRequest
0 голосов
/ 05 октября 2010

Редактировать: 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];

1 Ответ

0 голосов
/ 05 октября 2010

Попробуйте stringWithFormat [NSString stringWithFormat:@"%@", highscore]; вместо рекорда

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...