我正在开发需要检查作业截止日期的应用程序。我想知道到期日期是否在下个星期之内,然后再执行一项操作。
我可以找到的大多数文档都在Objective-C中,但我不知道如何在Swift中完成。谢谢您的帮助!!
我喜欢使用扩展使代码更具可读性。以下是一些NSDate扩展,它们可以帮助清理代码并使其易于理解。我把它放在一个sharedCode.swift文件中:
extension NSDate {
func isGreaterThanDate(dateToCompare: NSDate) -> Bool {
//Declare Variables
var isGreater = false
//Compare Values
if self.compare(dateToCompare as Date) == ComparisonResult.orderedDescending {
isGreater = true
}
//Return Result
return isGreater
}
func isLessThanDate(dateToCompare: NSDate) -> Bool {
//Declare Variables
var isLess = false
//Compare Values
if self.compare(dateToCompare as Date) == ComparisonResult.orderedAscending {
isLess = true
}
//Return Result
return isLess
}
func equalToDate(dateToCompare: NSDate) -> Bool {
//Declare Variables
var isEqualTo = false
//Compare Values
if self.compare(dateToCompare as Date) == ComparisonResult.orderedSame {
isEqualTo = true
}
//Return Result
return isEqualTo
}
func addDays(daysToAdd: Int) -> NSDate {
let secondsInDays: TimeInterval = Double(daysToAdd) * 60 * 60 * 24
let dateWithDaysAdded: NSDate = self.addingTimeInterval(secondsInDays)
//Return Result
return dateWithDaysAdded
}
func addHours(hoursToAdd: Int) -> NSDate {
let secondsInHours: TimeInterval = Double(hoursToAdd) * 60 * 60
let dateWithHoursAdded: NSDate = self.addingTimeInterval(secondsInHours)
//Return Result
return dateWithHoursAdded
}
}
现在,如果您可以执行以下操作:
//Get Current Date/Time
var currentDateTime = NSDate()
//Get Reminder Date (which is Due date minus 7 days lets say)
var reminderDate = dueDate.addDays(-7)
//Check if reminderDate is Greater than Right now
if(reminderDate.isGreaterThanDate(currentDateTime)) {
//Do Something...
}
问题内容: 如何将以下Objective-C代码转换为Swift代码? 我正在格式化。 问题答案:
Swift-NSDate-Extensions 是 Swift NSDate 扩展,帮助开发。
问题内容: 我正在迅速这样做: 日志给了我这个: 然后,我尝试获取间隔以进行测试: 我得到: tI = 0.0 我究竟做错了什么?我似乎可以使timeIntervalSince1970调用正常工作。在Swift中是否有与此相关的已知问题,或者我在这里缺少什么? 问题答案: 最有可能是以 毫秒为单位 的时间间隔: Swift 3及更高版本:
我明白为什么第三个和第四个输出打印真和假。这是因为返回一个对象,包装类缓存值在-128到127范围内的对象。如果向传递了该范围内的任何值,则它应该重用缓存中的对象。否则,它将创建一个新对象。 现在,为什么第二个输出打印出false?我以为返回一个原语,而不是像那样返回一个对象。
问题内容: 我有一个采用以下格式的包含: 星期四,2014年9月4日10:50:12 +0000 您知道如何将其转换为: 04-09-2014 ( dd-MM-yyyy ) 当然,使用 Swift 问题答案: 如果上述方法不起作用,则应采取以下措施:
问题内容: 当我尝试向服务器上的API发送POST请求时遇到问题,我遵循了许多不同的教程,但仍然无法正常工作。我知道我的问题出在POST请求上,但我解决不了!所以这是我在Swift中的代码以及我在php中的API :(是的,我已经用代码中的真实ID替换了xxxx) 总结一下,服务器接收到请求,例如,如果我手动输入一个伪指令,它就可以工作,实际上是POST方法不起作用。。服务器未接收到POST参数