0

我正在尝试验证 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);
4

1 回答 1

1

我相信这是 Swift 3.0 中的一个错误

https://bugs.swift.org/browse/SR-2307

同时,您可以迭代字符串中的字符并 rangeOfCharacter(from: numbersOnly) 用作解决方法或执行类似的操作 string.trimmingCharacters(in: numbersOnly).characters.count > 0

于 2017-01-13T21:53:18.047 回答