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)") //用来显示用户所选的日期
        }
    }
}
上一篇下一篇

猜你喜欢

热点阅读