我正在尝试验证iOS文本框的输入是否仅为数字。
在这个区块中,我在XCode 8.0 beta 2中收到错误。我该怎么办?
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let numbersOnly = CharacterSet.decimalDigits;
let characterSetFromTextField = CharacterSet(charactersIn: string);
let stringIsValid = numbersOnly.isSuperset(of: characterSetFromTextField);
答案 0 :(得分:1)
我相信这是Swift 3.0中的一个错误
https://bugs.swift.org/browse/SR-2307
在此期间,您可以迭代字符串中的字符并使用
rangeOfCharacter(from: numbersOnly)
作为一种解决方法或做类似的事情
string.trimmingCharacters(in: numbersOnly).characters.count > 0