Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在swift 5中使用两个UIDatePicker获取并显示两次之间的差异_Ios_Swift_Uidatepicker_Swift5_Xcode10 - Fatal编程技术网

Ios 如何在swift 5中使用两个UIDatePicker获取并显示两次之间的差异

Ios 如何在swift 5中使用两个UIDatePicker获取并显示两次之间的差异,ios,swift,uidatepicker,swift5,xcode10,Ios,Swift,Uidatepicker,Swift5,Xcode10,我是Swift的新手,我正在尝试计算两个UIDatePicker之间的时间差 我希望用户能够选择时间,然后按下按钮,显示的时间差显示在“标签”中,例如,用户选择下午5:00和11:00,它将显示6:00或类似的东西。我不知道该怎么做。比如(挑选者1-挑选者2)也许? 到目前为止,在我的代码中,我有: 导入UIKit 类ViewController:UIViewController{ @IBOUTLE弱var选择器1:UIDATECIPKER! @IBOutlet弱var选择器2:UIDatePi

我是Swift的新手,我正在尝试计算两个UIDatePicker之间的时间差

我希望用户能够选择时间,然后按下按钮,显示的时间差显示在“标签”中,例如,用户选择下午5:00和11:00,它将显示6:00或类似的东西。我不知道该怎么做。比如(挑选者1-挑选者2)也许? 到目前为止,在我的代码中,我有:

导入UIKit
类ViewController:UIViewController{
@IBOUTLE弱var选择器1:UIDATECIPKER!
@IBOutlet弱var选择器2:UIDatePicker!
@IBVAR弱标签1:UILabel!
重写func viewDidLoad(){
super.viewDidLoad()
//加载视图后,通常从nib执行任何其他设置。
}
@iAction func按钮映射(uu发送方:任意){
} 
}

计算两个日期之间的距离,然后显示小时和分钟。它忽略秒数,但如果您也需要秒数,您应该能够遵循与我在这里所做的相同的模式

让firstDate=picker1.date
设secondDate=picker2.date
设timeInBetween=secondDate.timeIntervalSince(secondDate)//以秒为单位
var小时=0
var分钟=0
var秒=时间间隔
而秒数>=3600{
秒-=3600
小时数+=1
}
而秒数>=60{
秒-=60
分钟+=1
}
lable1.text=“\(小时)小时\(小时==1?”:“s”),\(分钟)分钟\(分钟==1?”:“s”)。”


编辑:尽管此解决方案有效,但我建议任何正在寻找解决方案的人都需要更新标签文本,而我的方法似乎仍是最佳选择。

使用
日期组件
找出两个日期之间的差异:

let date1 = picker1.date
let date2 = picker2.date

let diff = Calendar.current.dateComponents([.hour, .minute], from: date1, to: date2)
print("\(diff.hour!), \(diff.minute!)")