SwiftUI 学习笔记(四):常见的 View 和 Modifier 解析(三)

DatePicker

DatePicker 为日期选择器,对应 UIKit 中的 UIDatePicker。我们需要绑定一个 Date 类型的变量来记录当前选择的日期。

struct ContentView: View {
    
    @State private var birthDay: Date = Date() //绑定日期
    
    var body: some View {
        //第一个参数为绑定的参数,第二个参数为显示的日期内容
        DatePicker(selection: $birthDay, displayedComponents: .date) {
            Text("出生日期")
        }.environment(\.locale, Locale(identifier: "zh_CN")) //默认为英文选择器,这里指定为中文
    }
}

阅读全文

SwiftUI 学习笔记(三):常见的 View 和 Modifier 解析(二)

TextField

TextField 即为输入框,对应 UIKit 中的 UITextField。

struct ContentView: View {
    var body: some View {
        //第一个参数为placeholder,text为输入的内容,textFieldStyle为边框样式
        TextField("写点什么进来吧", text: .constant("Hello"))
            .textFieldStyle(RoundedBorderTextFieldStyle()) //圆角边框
            .padding()
    }
}

和 UIKit不同,SwiftUI是一个数据驱动的框架,故输入框输入的内容类型不再是 String,而是 Binding<String>,方便对输入内容的绑定操作。上面的例子暂时用了 constant(value: String)直接将一个字符串转成了Binding<String>。

阅读全文

SwiftUI 学习笔记(二):常见的 View 和 Modifier 解析(一)

与 UIKit 使用多种多样的控件布局不同,SwiftUI 的布局主要是使用各种 View(视图) 和 Modifier(修饰符) 来设置页面布局。在 UIKit 中,我们使用控件的各种属性来构建 UI,而 SwiftUI 中,我们用 Modifier 来修饰 View 来达到同样的目的。实际上,大部分 SwiftUI 中的 View 和 UIKit 中的控件是有对应关系的,我们在学习的时候只要掌握好这种对应关系即可。本文开始就梳理一下 SwiftUI 中常见的 View 和 Modifier。 阅读全文

SwiftUI 学习笔记(一):从 Swift 5.1 的新特性说起

零、前言

2019 年春夏之交的 WWDC19,注定会成为深深烙印在 Apple 开发者们记忆中的一场盛会。自从 2014 年 Apple 发布 Swift 以来,还没有哪一次的 WWDC 能汇集到这么多人的目光。在这个充满新意和激情的舞台中央,被开发者们给予热情欢呼的主角毫无疑问只有一个,那就是 SwiftUI。 阅读全文