如何在 Swift 中限制 UITextField 仅获取数字?
在 iOS 应用中,有时我们需要将我们的文本字段限制为仅接受数字作为输入,这可以通过多种方式来实现,我们来看看其中一些。
方法 1:从情节提要中更改文本字段类型。
- 选择你希望限制为数字输入的文本字段。
- 转到其属性检查器。
- 选择键盘类型并从那里选择数字键盘。
方法 2:通过编程方式将输入限制为数字。
- 选择文本字段
- 在视图控制器中创建它的出口。
- 让视图控制器符合 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
}
}
}这将创建一个只能以数字为输入的文本字段,不能输入其他字符。
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP