TextField17 Mar 2025 | 6 分钟阅读 它可以定义为一个对象,用于在界面中显示一个可编辑的文本区域。文本框用于获取用户输入的基于文本的输入。 正如我们讨论过标签一样,我们也可以通过赋予属性来自定义文本框。在某些情况下,我们可能还需要配置键盘,例如,仅限制用户输入数字。文本框使用目标动作机制和委托对象来报告编辑期间所做的更改。 以下步骤用于配置文本框。 - 在对象库中搜索文本框,并将结果拖到故事板中。
- 为文本框配置一个或多个目标和动作。
- 自定义文本框的键盘相关属性。
- 执行文本框委托对象任务以报告编辑期间所做的更改。
- 当用户更改文本框内容时,将调用文本框委托方法。
- 验证用户输入的文本。
- 当键盘的返回按钮被点击时,将调用委托方法。
- 在相应的 ViewController 类中创建文本框的出口。
示例在这里,我们将使用文本框和标签创建一个表单。我们还将对文本框应用一些验证。如果验证失败,则会向用户显示一个警告;否则,将向用户显示成功消息。 界面构建器为了为项目创建界面,我们将使用文本框来获取用户的数据,并将其与标签相关联,以便向用户显示消息。 我们不会在应用程序中使用按钮,因为它尚未在此教程中介绍;相反,我们正在使用可点击的标签来触发事件。 通过在对象库中搜索适当的对象并将结果拖到故事板中来创建界面。 在项目中创建了以下视图以获取用户的信息。  如何在成功注册后显示成功消息?在 iOS 开发中,我们通常在成功完成任何任务时创建另一个屏幕。但是,在此示例中,我们将在同一屏幕上创建一个包含成功消息的 UIView,并将其隐藏,直到在提交标签被点击时验证成功。 添加 createUserSuccessView 后的界面显示在下图中。  出口出口是在关联的 View Controller 类中创建的对象的。所有连接的出口都可以在 XCode 的连接检查器中显示,如下图所示。  ViewController.swift 输出  配置键盘通过在文本框出口上调用 becomeFirstResponder() 方法,文本框可以成为第一响应者。当文本框成为第一响应者时,键盘会自动可见,并且键盘输入绑定到文本框。当用户点击文本框时,文本框成为第一响应者,即键盘可见。 要关闭键盘,可以在文本框出口上调用 resignFirstResponder() 方法。我们可能需要响应某些特定交互来关闭键盘。当用户按下回车键时,键盘会自动关闭。 文本框的编辑状态受键盘的显示和关闭影响。当用户开始编辑键盘出现时的文本框时,文本框会向其委托发送相应的通知。当编辑开始和结束时,也会通知委托方法。 文本框委托方法 序号 | 方法签名 | 描述 |
---|
1 | func textFieldShouldBeginEditing(UITextField) -> Bool | 它询问委托是否应该开始编辑相应的文本框。 | 2 | func textFieldDidBeginEditing(UITextField) | 它告诉委托文本框中的编辑已开始。 | 3 | func textFieldShouldEndEditing(UITextField) -> Bool | 它要求委托结束文本框中的编辑。 | 4 | func textFieldDidEndEditing(UITextField, reason: UITextField.DidEndEditingReason) | 它告诉委托已停止指定文本框的编辑。 | 5 | func textFieldDidEndEditing(UITextField) | 它是重载方法,与上述方法相同。 | 6 | func textField(UITextField, shouldChangeCharactersIn: NSRange, replacementString: String) -> Bool | 它询问委托是否应该更改文本框的当前内容。 | 7 | func textFieldShouldClear(UITextField) -> Bool | 它询问委托是否应该删除文本框的当前内容。 |
界面构建器属性文本框属性 序号 | 属性 | 描述 | 属性 |
---|
1 | text | 它表示文本框当前包含的文本。它可以在运行时通过文本框的 text 属性访问。 | text | 2 | color | 它表示文本框文本的颜色。这可以使用 TextField 的 textColor 属性访问。 | textColor | 3 | font | 它表示文本框文本的字体。这可以使用文本框对象的 font 属性访问。 | font | 4 | 对齐方式 | 它表示编辑区域内文本的对齐方式。 | textAlignment | 5 | placeholder | 它表示文本框的占位符字符串。当文本框为空时,将显示此字符串以引导用户。 | placeholder | 6 | 背景 | 它表示在启用文本框时显示的背景图像。背景图像显示在文本框内容后面。 | 背景 | 7 | disabled | 它表示在禁用文本框时显示的背景图像。 | disabledBackground | 8 | 边框样式 | 它表示文本框边框的视觉样式。 | borderStyle | 9 | 清除按钮 | 清除按钮是一个叠加视图,用户可以点击它来删除文本框的所有内容。此属性可用于设置文本框中清除按钮的外观。 | clearButtonMode | 10 | 最小字体大小 | 文本框文本的最小字体大小。当启用“自动调整以适应”选项时,文本框会自动更改字体大小,以确保文本的最大可读性。 | minFontSize |
键盘属性 序号 | 属性 | 描述 | 属性 |
---|
1 | 大写 | 此属性将自动大写样式应用于文本框中输入的文本。 | autocapitalizationType | 2 | 更正 | 此属性用于确定在键入时是否启用自动更正。 | autocorrectionType | 3 | 拼写检查 | 它用于确定在键入时是否启用拼写检查。 | spellCheckingType | 4 | 键盘类型 | 此属性设置在键入时显示的键盘类型。 | keyboardType | 5 | 外观 | 它用于设置文本框的外观。它指定深色或浅色键盘。 | keyboardAppearance | 6 | 回车键 | 它用于设置要在键盘上显示的返回键的类型。 | returnKeyType |
|