osx - Swift timeInterval formatter -
i can date in de date picker, calculate time left , put in label. gives seconds:
let timeleft = datepicker.datevalue.timeintervalsincenow countinglabel.stringvalue = "seconds left: \(timeleft)" how format "timeleft"?
i tried , not work: var formatter = nsdateformatter() formatter.dateformat = "eeee, yyyy-mm-dd hh:mm:ss" let timeleft2 = formatter.stringfromdate(timeleft)
you can use nsdatecomponentsformatter. documentation:
an
nsdatecomponentsformatterobject takes quantities of time , formats them user-readable string. use date components formatter create strings app’s interface.
example:
let formatter = nsdatecomponentsformatter() formatter.unitsstyle = .full formatter.allowedunits = .calendarunitsecond | .calendarunitminute | .calendarunithour let pickeddate = datepicker.datevalue let = nsdate() let formattedtimeleft = formatter.stringfromdate(now, todate: pickeddate)! // example result : 1:06:50 there more output formats available, e.g.
.abbreviated : 1h 6m 50s .short : 1 hr, 6 min, 50 secs .full : 1 hour, 6 minutes , 50 seconds
Comments
Post a Comment