use*_*873 1 cocoa-touch objective-c nsdate ios
我有两个datepickers给我一个startTime和一个endTime.根据这段代码:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
dateFormatter.timeZone=[NSTimeZone defaultTimeZone];
dateFormatter.timeStyle=NSDateFormatterShortStyle;
dateFormatter.dateStyle=NSDateFormatterShortStyle;
NSString *dateTimeString=[dateFormatter stringFromDate:startTime.date];
NSLog(@"Start time is %@",dateTimeString);
NSDateFormatter *dateFormatter2 = [[NSDateFormatter alloc]init];
dateFormatter2.timeZone=[NSTimeZone defaultTimeZone];
dateFormatter2.timeStyle=NSDateFormatterShortStyle;
dateFormatter2.dateStyle=NSDateFormatterShortStyle;
NSString *dateTimeString2=[dateFormatter2 stringFromDate:endTime.date];
NSLog(@"End time is %@",dateTimeString2);
Run Code Online (Sandbox Code Playgroud)
在我的.h
@property (weak, nonatomic) IBOutlet UIDatePicker *startTime;
@property (weak, nonatomic) IBOutlet UIDatePicker *endTime;
Run Code Online (Sandbox Code Playgroud)
我有这个代码,让我在给定时间和当前时间之间进行比较.测试它的最佳方法是什么,因为我需要你在后台使用它.
if ([[NSDate date] isEqualToDate:startTime.date]) {
NSLog(@"currentDate is equal to startTime");
}
if ([[NSDate date] isEqualToDate:endTime.date]) {
NSLog(@"currentDate is equal to endTime");
}
Run Code Online (Sandbox Code Playgroud)
我需要在那个代码或这个代码之间做出选择.那么NSLog在这里工作可以吗?
- (NSTimeInterval)timeIntervalSinceDate:(NSDate *)anotherDate
if([startTime.date timeIntervalSinceDate:[NSDate date]] > 0)
{
//start time greater than today
}
else if([startTime.date timeIntervalSinceDate:[NSDate date]] < 0)
{
//start time less than today
}
else
{
//both dates are equal
}
Run Code Online (Sandbox Code Playgroud)
谢谢
NSDate *date1;
NSDate *date2;
Run Code Online (Sandbox Code Playgroud)
然后以下比较将告诉哪个是早/晚/相同:
if ([date1 compare:date2] == NSOrderedDescending) {
NSLog(@"date1 is later than date2");
} else if ([date1 compare:date2] == NSOrderedAscending) {
NSLog(@"date1 is earlier than date2");
} else {
NSLog(@"dates are the same");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2964 次 |
| 最近记录: |