【问题标题】:What is the simple way to detect time is in hours or not?检测时间是否以小时为单位的简单方法是什么?
【发布时间】:2016-08-10 05:40:32
【问题描述】:

我在我的项目中使用UIDatePickerViewtimeInterval 一分钟。选择时间后,如果时间以小时为单位,那么我必须做一些事情。那么如何检测用户是否选择了以小时为单位的时间呢?

【问题讨论】:

    标签: ios objective-c iphone uidatepicker nstimeinterval


    【解决方案1】:

    试试这个,你可以得到两个日期之间的小时数。

    NSDate* date1 = someDate;
     NSDate* date2 = someOtherDate;
     NSTimeInterval distanceBetweenDates = [date1 timeIntervalSinceDate:date2];
     double secondsInAnHour = 3600;
     NSInteger hoursBetweenDates = distanceBetweenDates / secondsInAnHour;
    

    【讨论】:

    • 谢谢@prince 我会试试的
    • 确定@prince 我正在检查
    【解决方案2】:

    终于我自己的问题得到了答案

        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");
    }
    

    【讨论】:

      【解决方案3】:
      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];
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-01-21
        • 2012-02-21
        • 2014-01-04
        • 2022-09-24
        • 2011-05-21
        • 2014-09-01
        • 1970-01-01
        • 2013-05-21
        相关资源
        最近更新 更多