NSTimeInterval to HH:mm:ss?

后端 未结 12 1790
陌清茗
陌清茗 2020-12-04 08:53

If I have an NSTimeInterval that is set to say 200.0, is there a way to convert that into 00:03:20, I was thinking I could initialise an NSDate with it and then use NSDateFo

12条回答
  •  Happy的楠姐
    2020-12-04 09:20

    Objective C version of onmyway133's answer

    - (NSString*) formatTimeInterval:(NSTimeInterval) timeInterval {
    
        NSDateComponentsFormatter *formatter = [[NSDateComponentsFormatter alloc] init];
    
        formatter.zeroFormattingBehavior = NSDateComponentsFormatterZeroFormattingBehaviorPad;
    
        if (timeInterval > 3600) {
            formatter.allowedUnits = NSCalendarUnitHour | NSCalendarUnitMinute | NSCalendarUnitSecond;
        } else {
            formatter.allowedUnits = NSCalendarUnitMinute | NSCalendarUnitSecond;
        }
    
        return [formatter stringFromTimeInterval:timeInterval];
    }
    

提交回复
热议问题