SwiftUI—方便用户选择日期的DatePicker日期拾取器
2020-07-13 本文已影响0人
anny_4243
原文链接:https://github.com/fzhlee/SwiftUI-Guide#-%E7%AC%AC22%E8%8A%82pickerdate-
PickerDate相当于UIKit中的UIDatePicker控件,用于实现时间和日期项目的选择。
示例代码:
struct ContentView : View {
var myDateFormatter: DateFormatter { //添加一个日期格式化类型的属性,您将用它对用户所选的日期和时间进行格式化,并显示在文本视图中
let formatter = DateFormatter() //初始化一个日期格式化类型的实例
formatter.dateStyle = .long //并设置他的日期格式化类型为长类型,即依次显示月份、天数和年份
return formatter
}
@State var selectedDate = Date() //和DatePicker进行绑定,当用户选择某个日期时,该属性的值也将同步更改
var body: some View {
VStack {
DatePicker(selection: $selectedDate, displayedComponents: DatePickerComponents.hourAndMinute) { //添加一个DatePicker视图,将它和selectedDate属性进行绑定,并设置DatePicker的组件类型为小时和分钟
Text("Date")
}
DatePicker(selection: $selectedDate, displayedComponents: DatePickerComponents.date) {
Text("Date")
}
DatePicker(selection: $selectedDate,in: Date()...Date().advanced(by: 7*24*3600), displayedComponents: [.date, .hourAndMinute]) { //对日期列表的日期范围进行了限定,最小值为今天,最大值为7天之后的日期。
Text("Date")
}
Text("Your Choice: \(selectedDate, formatter: myDateFormatter)") //用来显示用户所选的日期
}
}
}