【发布时间】:2021-04-03 03:06:55
【问题描述】:
我正在尝试在标签上显示一个数字,该数字由在文本字段框中输入的值计算得出。但是,我在尝试做等式时遇到了这个错误。我的代码如下。知道我需要更改哪些内容才能显示该答案吗?
func calculateRewardPoints() -> Int {
if currentLevelStepper.value == 1 {
resultHeaderLabel.text = "60 Required Forge Points for Lvl 1"
rewardLinkOne.text = "10"
rewardLinkTwo.text = "5"
rewardLinkThree.text = "0"
rewardLinkFour.text = "0"
rewardLinkFive.text = "0"
var roundone = round(((Double(bonusinput.isTextNumber().1) + Double(100)) / Double(100) ) * Double(10) )
var roundtwo = round(((Double(bonusinput.isTextNumber().1) + Double(100)) / Double(100) ) * Double(5) )
var roundthree = round(((Double(bonusinput.isTextNumber().1) + Double(100)) / Double(100) ) * Double(5) )
var roundfour = round(((Double(bonusinput.isTextNumber().1) + Double(100)) / Double(100) ) * Double(5) )
var roundfive = round(((Double(bonusinput.isTextNumber().1) + Double(100)) / Double(100) ) * Double(5) )
rateRewardLinkOne.text = String(roundone)
rateRewardLinkTwo.text = String(roundtwo)
rateRewardLinkThree.text = String(roundthree)
rateRewardLinkFour.text = String(roundfour)
rateRewardLinkFive.text = String(roundfive)
//rateRewardLinkFive.text = String( ( (Double(bonusinput.isTextNumber().1) + Double(100)) / Double(100) ) * Double(5) )
fpSecureLinkOne.text = "40"
fpSecureLinkTwo.text = "40"
fpSecureLinkThree.text = "45"
fpSecureLinkFour.text = "45"
fpSecureLinkFive.text = "45"
/*(A)*/ var totalfp = 60
/*(B)*/ var fpadded = String(Int(fpinput.isTextNumber().1))
/*(C1)*/ var baserewardone = 10
/*(C2)*/ var baserewardtwo = 5
/*(C3)*/ var baserewardthree = 0
/*(C4)*/ var baserewardfour = 0
/*(c5)*/ var baserewardfive = 0
/*(D)*/ var arcbonus = ((bonusinput.isTextNumber().1) + 100) / 100
var squaredone = (baserewardone * arcbonus) * 2
var squaredtwo = (baserewardtwo * arcbonus) * 2
var squaredthree = (baserewardthree * arcbonus) * 2
var squaredfour = (baserewardfour * arcbonus) * 2
var squaredfive = (baserewardfive * arcbonus) * 2
var securefpthree = 45
var securefpfour = 45
var securefpfive = 45
// Where error occurs // I need the fpSecure labels to be ( (A-B) - ((C*D)*2) )
fpSecureLinkOne.text = String((totalfp - fpadded) - squaredone)
}
【问题讨论】:
-
我不熟悉 swift,但它看起来像 calculateRewardPoints 返回一个 int,而您正在返回一个字符串。因此,如果您想返回一个字符串:“calculateRewardPoints() -> String”,或者如果您想返回一个 int:不要将 fpSecureLinkOne 转换为字符串。如果要显示计算结果,我认为您需要前者(“-> String”)。
-
是的,我需要在标签上将 Int 显示为“字符串”
-
好的,所以我认为第一行应该是“func calculateRewardPoints() -> String {”