在iOS应用中,有时我们需要将文本字段限制为仅将数字作为输入,这可以通过多种方式完成,下面让我们来看一些。
选择要限制为数字输入的文本字段。
转到其属性检查器。
选择键盘类型,然后从中选择数字键盘。
选择文本字段
在视图控制器中创建其出口。
使视图控制器符合UITextFieldDelegate
设置文本字段的委托
添加以下功能
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { if let x = string.rangeOfCharacter(from: NSCharacterSet.decimalDigits) { return true } else { return false } }
我们整个示例类看起来像
import UIKit class ViewController: UIViewController, UITextFieldDelegate { @IBOutlet weak var tf: UITextField! override func viewDidLoad() { tf.delegate = self super.viewDidLoad() } func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { if let x = string.rangeOfCharacter(from: NSCharacterSet.decimalDigits) { return true } else { return false } } }
这将创建一个文本字段,该文本字段只能以数字作为输入,不能包含其他字符。
问题内容: 如何在Swift中将用户的TextField输入限制为数字? 问题答案: 您可以使用的方法将用户的输入限制为数字: 为Swift 3更新:
我试图将文本视图字符限制为英语。但如果我复制并粘贴非英语字符,我的文本视图就会接收这些条目。谁能帮我解决这个问题。UITextView应该只接受英文字符(包括特殊字符、数字和空格)。或者,当我点击done时,如果textview包含非英语字符,它应该验证并向我发送错误消息。 提前谢谢。 下面是我的代码 此代码不允许我输入空格和特殊字符。需要帮忙解决这个问题。
问题内容: 我在AngularJS中使用ngChange来触发自定义函数,该函数将删除用户添加到输入中的所有字母。 问题是我需要定位触发的输入,以便删除输入的字母。我已经在Google上寻找了很长时间,并且对此一无所获。 我能做什么? 问题答案: 简单的方法 ,如果适用于您的用例,请使用type =“ number” : 另一种简单的方法: ng- pattern 也可用于定义正则表达式,以限制字
本文向大家介绍使用UITextField限制只可输入中,英文,数字的方法,包括了使用UITextField限制只可输入中,英文,数字的方法的使用技巧和注意事项,需要的朋友参考一下 前言 本文主要介绍使用UITextField限制只可输入中,英文,数字,我们可以使用NSPredicate正则表达式可以过滤,下面看看详细的步骤方法 首先设置UItextField的代理 实现如下方法: 然后添加事件,因
问题内容: 我正在获取月份号作为输入。我成功地将UITextField中的字符数限制为2。但是我希望用户仅输入来自的值,而不要输入其他值。当用户键入数字时,即必须同时进行。如果我使用简单的条件检查每个字符并部分返回false,则文本字段将不允许我使用clear或重新键入其他任何字符。谁来帮帮我。 问题答案: 将键盘类型设置为数字键盘 加上这个
我想把我的标签限制为10个字符,我是一个完全的编程新手,所以这是我到目前为止的第三个月了。。。无论如何,提前谢谢:-)