2016-04-08 20 views

答えて

0
if (Int(textField2.text) == nil) { 
    //In this case, your text is not an integer 
} 

スウィフトは、あなたがintとして「1 2 3」を確認したい場合は、無効なパラメータ

1

あなたはそれをintに変換できる場合のTextFieldテキストプロパティがnilではないし、それを確認することができます。

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

あなたはそれtextプロパティが作成できる整数を持っているかどうかを知る必要がある場合次のようにtrueまたはfalseを返すように計算されたプロパティ:

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

は、用法:

if textField2.isInteger { 
     // do whatever 
} 
0

を渡す際にクラッシュからあなたのアプリを防ぐため、これらの空想failable初期化子を持っているので、これは完全に正常に動作し、あなたがこのように行うことができます:あなたが唯一のintとして "123" を確認したい場合は

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

、あなたは次のように行うことができます。

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