【发布时间】:2016-08-10 05:40:32
【问题描述】:
我在我的项目中使用UIDatePickerView 和timeInterval 一分钟。选择时间后,如果时间以小时为单位,那么我必须做一些事情。那么如何检测用户是否选择了以小时为单位的时间呢?
【问题讨论】:
标签: ios objective-c iphone uidatepicker nstimeinterval
我在我的项目中使用UIDatePickerView 和timeInterval 一分钟。选择时间后,如果时间以小时为单位,那么我必须做一些事情。那么如何检测用户是否选择了以小时为单位的时间呢?
【问题讨论】:
标签: ios objective-c iphone uidatepicker nstimeinterval
试试这个,你可以得到两个日期之间的小时数。
NSDate* date1 = someDate;
NSDate* date2 = someOtherDate;
NSTimeInterval distanceBetweenDates = [date1 timeIntervalSinceDate:date2];
double secondsInAnHour = 3600;
NSInteger hoursBetweenDates = distanceBetweenDates / secondsInAnHour;
【讨论】:
终于我自己的问题得到了答案
NSDateFormatter *formatter23 = [[NSDateFormatter alloc]init];
[formatter23 setDateFormat:@"yyyy-MM-dd--HH:mm"];
NSDate* date1 = datePicker.date;
[formatter23 setDateFormat:@"mm"];
if ([[formatter23 stringFromDate:date1] isEqualToString:@"00"] || [[formatter23 stringFromDate:date1] isEqualToString:@"30"]){
NSLog(@"Date is in half an hour or hour");
} else{
NSLog(@"Some other");
}
【讨论】:
NSDateFormatter *timeFormatter = [[[NSDateFormatter alloc]init]autorelease];
timeFormatter.dateFormat = @"HH";
NSString *date_Hour= [timeFormatter stringFromDate: localDate];
获取小时的简单方法只使用 NSDateComponents 类
NSDateComponents *components = [[NSCalendar currentCalendar] components:NSHourCalendarUnit fromDate:[NSDate date]];
NSInteger hour= [components hour];
【讨论】: