2016-04-08 13 views

cevap

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

Swift Eğer int olarak "1 2 3" kontrol etmek isterseniz geçersiz parametreler

1

Gün içinde bir çok textField metin özelliğini kontrol edebilirsiniz nil değildir ve int dönüştürülebilir eğer:

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

sadece bunu bir tamsayı oluşturabilir olan mülkiyetlerin metin olmadığını bilmek gerekiyorsa

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

kullanım:

if textField2.isInteger { 
     // do whatever 
} 
0 hesaplanan bir özelliği aşağıdaki gibi doğru ya da yanlış dönmek için
0

geçerken çökmesini uygulamanızı engellemek olanlar fantezi failable başlatıcıları vardır çünkü bu mükemmel çalışıyor, böyle yapabilirsiniz : yalnızca int olarak "123" kontrol etmek isterseniz

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

, böyle yapabilirsiniz:

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