誕生日に応じて誰かの年齢を見つける必要があるアプリに取り組んでいます。私は単純NSDate
ですが、どうすればこれを見つけることができますNSDateFormatter
か?
質問する
4000 次
4 に答える
24
- (NSInteger)ageFromBirthday:(NSDate *)birthdate {
NSDate *today = [NSDate date];
NSDateComponents *ageComponents = [[NSCalendar currentCalendar]
components:NSCalendarUnitYear
fromDate:birthdate
toDate:today
options:0];
return ageComponents.year;
}
NSDateFormatter
日付をフォーマットするためのものです(当たり前!)。経験則として、 に対して何らかの計算を実行する必要があるときはいつでも、および関連するクラス ( など)NSDate
を使用します。NSCalendar
NSDateComponents
于 2013-10-05T20:02:39.113 に答える
2
NSYearCalendarUnitは非推奨です。NSCalendarUnitYearに置き換えられます
- (NSString *) ageFromBirthDate:(NSString *)birthDate{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy"];
NSDate *myDate = [dateFormatter dateFromString: birthDate];
return [NSString stringWithFormat:@"%d ans", [[[NSCalendar currentCalendar] components:NSCalendarUnitYear fromDate:myDate toDate:[NSDate date] options:0] year]];
}
于 2014-12-16T17:02:25.687 に答える