在带有和没有小数点的标签中显示双打

时间:2016-07-22 16:37:01

标签: ios swift double textfield decimal-point

要查看最佳答案,请向下滚动至Paulw11的答案。

(我为任何英语错误道歉,这不是我的第一语言)

我需要解决这个问题才能继续开发我的应用程序。

Here,我有截图。 (我知道,这很难看,我正在制定约束。)

问题是:即使数字是整数,它仍然显示为理性。 (例如:4表示为4.0,16表示为16.0)

我想要的是:

  • 当textfield中的数字是整数时,我希望它不带小数点。 (4显示为4,16显示为16)
  • 当textfield中的数字是有理数时,我希望它以小数点出现。 (4.2显示为4.2,2.5为2.5)

我不想发生什么:

  • 围绕任意数字。这会破坏数学。正如我所说,4.22需要是4.22。但4.0只需要4个。

我将非常感谢您的帮助,谢谢。

2 个答案:

答案 0 :(得分:1)

您只需使用%g格式选项:

即可
deltaValueS.text = String(format:"∆ é %g",deltaValue)
  • 对于4.0,这将给出“Δé4”
  • 对于4.123,这将给出“Δé4.123”

答案 1 :(得分:-1)

你想要这样的东西吗?

let numberA: Float = 1.234
let numberB: Float = 7.000

func getStringFromNumber(number: Float) -> String {
    if number - Float(Int(number)) == 0 {
        return String("\(Int(number))")
    } else {
        return String("\(number)")
    }
}

print(getStringFromNumber(numberA)) // console output: 1.234
print(getStringFromNumber(numberB)) // console output: 7
相关问题