2015-08-11 3 views
0

Я хочу показать возраст пользователя в строке. Я работаю с Facebook API, и я вижу только дату рождения, но не возрастную ценность. Можно ли перевести время от времени к возрасту? Это мой код, используя день рождения:Конвертировать возраст к возрасту в Facebook API iOS

[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" 
                    parameters:@{ @"fields" : @"id,birthday)"}]startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) { 
     if (!error) { 
      NSString *ageOfLoginUser = [result valueForKey:@"birthday"]; 

      self.age.text = ageOfLoginUser; 
     } 
    }]; 
+1

этого вопрос имеет возможный ответ здесь: http://stackoverflow.com/questions/4463893/how-to-calculate-the-age-on-date/6103037 # 6103037 вам просто нужно преобразовать данные. –

+0

Что возвращает точно '[result valueForKey: @" birthday "]'? – Larme

ответ

0

Как сказан в комментариях выше, вы должны смотреть на этот коде из: How to calculate the age based on NSDate

NSString *birthDate = @"03/31/1990";  
NSDate *todayDate = [NSDate date]; 
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"MM/dd/yyyy"]; 
int time = [todayDate timeIntervalSinceDate:[dateFormatter dateFromString:birthDate]]; 
int allDays = (((time/60)/60)/24); 
int days = allDays%365; 
int years = (allDays-days)/365; 

NSLog(@"You live since %i years and %i days",years,days); 
+0

'NSDateComponents' гораздо больше подходит для этого. – Larme

+0

Это хорошо работает и легко понять. – WMios