如果TextField是否为整数,我如何检查if语句?

时间:2016-04-08 05:42:08

标签: swift if-statement

如果TextField是否为整数,我如何检查if语句?

@IBAction func Clickme2(sender: AnyObject) {
if TextField2.text == Int()  {
}

2 个答案:

答案 0 :(得分:1)

您可以检查textField文本属性是否为nil以及是否可以转换为Int:

guard let text = textField2.text, integer = Int(text) else { return }
print(integer)

如果你只需要知道text属性是否有Integer,你可以创建一个计算属性来返回true或false,如下所示:

extension UITextField {
    var isInteger: Bool {
        guard let text = text else { return false }
        return Int(text) != nil
    }
}

用法:

if textField2.isInteger  {
      // do whatever
}

答案 1 :(得分:0)

如果你想把“1 2 3”作为int检查,你可以这样做:

@IBAction func Clickme2(sender: AnyObject) {
    var text = TextField2.text.stringByReplacingOccurrencesOfString(" ", withString: "")
    if let integer = Int(text) {
        // do something here
    }
}

如果您只想将“123”检查为int,您可以这样做:

@IBAction func Clickme2(sender: AnyObject) {
    var text = TextField2.text.stringByTrimmingCharactersInSet(.whitespaceCharacterSet())
    if let integer = Int(text) {
        // do something here
    }
}