ios - 检查文本框中是否有 Int 的更好方法

标签 ios swift

我正在学习 Xcode 并创建一个非常简单的程序,其中包含用户输入值的文本框(txt 框)、执行计算的按钮(btnCalc)以及显示计算结果的标签(lblcalcdnumber)数字。我已经选择将数字键盘显示为下拉键盘,但我想检查以确保如果他们输入数字以外的任何内容,则不会发生任何情况。我的代码有效,但我觉得应该有一个更干净的解决方案。重要的是我希望他们只在教科书中输入整数。

    // Mark: Actions
@IBAction func btnCalc(sender: UIButton) {

        // let txtbox text beome int
    let number1 = Int(txtBox.text!)
        // let possibleInt convert mystring to int to check for nil, txtbox becomes OPTIONAL
    let possibleInt = Int(txtBox.text!)
    let number = 25

    if possibleInt != nil {
        let combinednumber = "\(Int(number1!) * number)"
        lblCalcedNumber.text = combinednumber
    }
    else {
        txtBox.text = ""
        txtBox.placeholder = "Please Enter a Valid Number"

    }

}

最佳答案

您可以使用 if 和 let 一起创建一个可选值。如果值不为零,它将转换为 possibleInt,否则,它将评估为 false。

@IBAction func btnCalc(sender: UIButton) {

    if let possibleInt = Int(txtBox.text!) {
        let combinednumber = "\(possibleInt * 25)"
        lblCalcedNumber.text = combinednumber
    }
    else {
        txtBox.text = ""
        txtBox.placeholder = "Please Enter a Valid Number"
    }
}

关于ios - 检查文本框中是否有 Int 的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34913523/

相关文章:

ios - 如何从 Firebase 获取名称以特定字符串开头的记录?

ios - 从日期字符串显示时间

ios - 如何检查 iOS 设备上的互联网连接?

ios - 如何让另一个 AppStore 应用程序打开一个预填充的原生消息应用程序?

iphone - UICollectionViewCell 抖动

ios - 模拟位置 bt 在第二次运行时可用

ios - 在 Swift 2 中,NSDictionary 发生了什么变化?

ios - 如何通过点击来选择和取消选择行

swift - 如何在不丢失 Swift 3 中的换行符的情况下将 HTML 文本转换为属性字符串

ios - 如何为具有动态高度的表格单元格正确设置自动布局?