SwiftUI封装UIKit之UIDatePicker
2020-06-10 本文已影响0人
iCloudEnd
本文价值与收获
看完本文后,您将能够作出下面的界面
Jietu20200610-095142@2x.jpg看完本文您将掌握的技能
- UIDatePicker基础使用
- 掌握SwiftUI使用UIDatePicker方法
代码
import SwiftUI
struct ContentView: View {
@State var date = Date()
var body: some View {
VStack{
Text("SwiftUI封装UIKit之UIPicker")
UDatePicker(date: self.$date)
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
struct UDatePicker: UIViewRepresentable {
@Binding var date: Date
private let datePicker = UIDatePicker()
func makeUIView(context: Context) -> UIDatePicker {
datePicker.datePickerMode = .date
//datePicker.datePickerStyle = .m
datePicker.addTarget(context.coordinator, action: #selector(Coordinator.changed(_:)), for: .valueChanged)
return datePicker
}
func updateUIView(_ uiView: UIDatePicker, context: Context) {
datePicker.date = date
}
func makeCoordinator() -> UDatePicker.Coordinator {
Coordinator(date: $date)
}
class Coordinator: NSObject {
private let date: Binding<Date>
init(date: Binding<Date>) {
self.date = date
}
@objc func changed(_ sender: UIDatePicker) {
self.date.wrappedValue = sender.date
}
}
}
推荐
基础文章推荐
经典教程推荐
- onevcat 大神的《SwiftUI 与 Combine 编程》
- 更新近百篇SwiftUI教程《SwiftUI2020教程》
- 帮您突破数据存储难关《SwiftUI vs CoreData数据存储解决方案》
技术源码推荐
推荐文章
CoreData篇
Combine篇
TextField篇
- 《SwiftUI 一篇文章全面掌握TextField文本框 (教程和全部源码)》
- 《SwiftUI实战之TextField风格自定义与formatters》
- 《SwiftUI实战之TextField如何给键盘增加个返回按钮(隐藏键盘)》
- 《SwiftUI 当键盘出现时避免TextField被遮挡自动向上移动》
- 《SwiftUI实战之TextField如何给键盘增加个返回按钮(隐藏键盘)》
JSON文件篇
一篇文章系列
- SwiftUI一篇文章全面掌握List(教程和源码)
- 《SwiftUI 一篇文章全面掌握TextField文本框 (教程和全部源码)》
- SwiftUI一篇文章全面掌握Picker,解决数据选择(教程和源码)
- SwiftUI一篇文章全面掌握Form(教程和源码)
- SwiftUI Color 颜色一篇文章全解决
技术交流
QQ:3365059189
SwiftUI技术交流QQ群:518696470
- 请关注我的专栏icloudend, SwiftUI教程与源码
https://www.jianshu.com/c/7b3e3b671970