我需要计算两个日期之间的完成百分比。我有两个日期:date1
和date2
。当date1
达到date2
时,它应为100%。当前日期在date1
之后的任何日子都应该有一些进展。例如。每当满足date2
之前,应该有某种进展。
我很难找到两个日期的百分比及其差异。
这与此有关 drawing a circle using bezier path swift
目前,我有以下内容:
let percentFull = 1 - Double(min(Int(components.day!), 20) / 20)
答案 0 :(得分:1)
您想使用DateInterval
,它可以为您完成大部分工作:
let duration = DateInterval(start: startDate, end: endDate).duration
let complete = DateInterval(start: startDate, end: currentDate).duration
let percentComplete = complete / duration
如果您希望它的形式为0-100而不是0-1:
let adjustedPercent = percentComplete * 100.0