TextField、SecureField、TextEditor 三兄弟是用来接受用户输入、编辑文本的控件,作为最常用的控件之一,在几乎所有需要输入的地方都需要用到它,以下是介绍常用的API使用方式。
- TextField
- 普通单行文本编辑控件
- SecureField
- 普通单行密码输入控件
- TextEditor
- 多行长文本编辑控件
- 默认没有边框
各类型释义
- textFieldStyle 输入框样式类型
- .automatic 系统基于上下文自动推荐
- .plain 没有边框样式输入框
- .roundedBorder 系统默认的圆角边框样式
- keyboardType 输入框关联键盘类型
.default
默认类型.asciiCapable
输入英文字母、ASCII字符的键盘.numbersAndPunctuation
显示数字和标点符号的键盘.URL
方便输入URL
地址的键盘.numberPad
适合语言环境的拨号呼叫键盘 (0-9, ۰-۹, ०-९.) 适用于PIN输入.phonePad
电话呼叫键盘 (1-9, *, 0, #, 数字下面带字母)
- .
namePhonePad
输入人名和电话号码的特殊键盘 .emailAddress
输入电子邮件的特殊键盘 (突出显示 空格、@、小数点).decimalPad
带小数点的数字键盘.twitter
twitter输入定制键盘 ( @ # ).webSearch
方便URL
输入的默认键盘类型 (突出 @ 、小数点).asciiCapableNumberPad
ASCII的数字键盘(0-9)
- submitLabel 右下角提交键盘显示
.done
显示完成
.go
显示跳转
.send
显示发送
.join
显示加入
.route
.search
显示搜索
.return
.next
显示下一步
.continue
- textInputAutocapitalization 自动切换大写
.characters
每个字符.sentences
每个句子的首字母.words
每个单词的首字母.never
完全不切换.none
仅首字母大写
struct TextView: View {
@State private var username: String = ""
@State private var password: String = ""
@State private var fullText: String = ""
var body: some View {
Form {
TextField(text: $username, prompt: Text("用户名")) {
}
.background(Color.green.opacity(0.2))
// 自动大小写
.autocapitalization(.none)
.disableAutocorrection(true)
// 输入框样式类型 上文有说明
.textFieldStyle(.roundedBorder)
.speechAdjustedPitch(0.5)
// 输入框关联键盘类型 上文有说明
.keyboardType(.URL)
// 右下角 return 按钮类型 上文有说明
.submitLabel(.next)
.onSubmit {
// MARK: 右下角 return 按钮点击提交事件
}
SecureField(text: $password, prompt: Text("密码")) {
Text("Password")
}
.background(Color.green.opacity(0.2))
.submitLabel(.done)
.onSubmit {
}
TextEditor(text: $fullText)
.foregroundColor(Color.gray)
.font(.custom("HelveticaNeue", size: 13))
.lineSpacing(5)
// 文本对齐方式
.multilineTextAlignment(.leading)
// 是否允许必要时压缩显示
.allowsTightening(true)
// 自动切换大写
.textInputAutocapitalization(.words)
.border(Color(UIColor.separator))
}
.disableAutocorrection(true)
.textFieldStyle(.roundedBorder)
.keyboardType(.default)
}
}
本文自 https://www.codeun.com 发布,相应代码均自主编写并严格审阅和测试,完整代码中包含丰富的学习笔记和使用方式、实用技巧。
· 如若转载,请注明出处:https://www.codeun.com/archives/871.html ·