-1
我試圖將輸入到UITextField中的數字與聲明的常量Int進行比較。下面是我當前的代碼,它在if語句上保持失敗。將Int值與格式化字符串比較爲Swift中Int的失敗
(我花了一段時間來找到代碼中的UITextField轉換爲int,因爲它看起來像是來自以前使用的toInt()2.0離開後改變。)
這裏我的最終目標是最終會有幾個UITextFields,它們的用戶輸入與常量進行比較,然後根據它們是否爲<或>它會生成一個建議。
class ViewController: UIViewController {
@IBOutlet weak var fshNumber: UITextField!
@IBOutlet weak var mdMessage: UILabel!
@IBAction func button(sender: AnyObject) {
let fshLimit:Int = 100
var fshInt = NSNumberFormatter().numberFromString(fshNumber.text)!.integerValue
if (fshLimit>fshInt) {
mdMessage.text = "You need help"
} else {
mdMessage.text = "You'll be okay"
}
}
你說的失敗是什麼意思? – jtbandes
您正在提供'fshNumber.text'的值,將其打印並添加到問題中。更好的是提供一個獨立的例子。當我替換「100:或99」時,我得到了預期的結果,使用調試器和print()將諸如'fshNumber.text'之類的東西分解爲中間語句以進行調試 – zaph
在Swift 2.0中,'str.toInt() ''已被替換爲'Int(str)'。注意,返回一個可選的,你可能應該使用可選的綁定來解包它'if let fshInt = Int(fshNumber.text){'爲了避免由於用戶輸入而導致的崩潰 – vacawama